PTLib  Version 2.10.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PSafeArray< Base > Class Template Reference

This class defines a thread-safe array of objects. More...

#include <safecoll.h>

Inheritance diagram for PSafeArray< Base >:
PSafeColl< PArray< Base >, Base > PSafeCollection PObject

Public Types

typedef PSafePtr< Base > value_type

Additional Inherited Members

- Public Member Functions inherited from PSafeColl< PArray< Base >, Base >
 PSafeColl ()
 Create a safe list collection wrapper around the real collection.
 PSafeColl (const PSafeColl &other)
 Copy constructor for safe collection.
PSafeColloperator= (const PSafeColl &other)
 Assign one safe collection to another.
virtual PSafePtr< Base > Append (Base *obj, PSafetyMode mode=PSafeReference)
 Add an object to the collection.
virtual PBoolean Remove (Base *obj)
 Remove an object to the collection.
virtual PBoolean RemoveAt (PINDEX idx)
 Remove an object to the collection.
virtual PSafePtr< Base > GetAt (PINDEX idx, PSafetyMode mode=PSafeReadWrite)
 Get the instance in the collection of the index.
virtual PSafePtr< Base > FindWithLock (const Base &value, PSafetyMode mode=PSafeReadWrite)
 Find the instance in the collection of an object with the same value.
- Static Public Member Functions inherited from PObject
static const char * Class ()
 Get the name of the class as a C string.
static Comparison InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
 Internal function caled from CompareObjectMemoryDirect()
- Protected Member Functions inherited from PSafeCollection
void CopySafeCollection (PCollection *other)
void CopySafeDictionary (PAbstractDictionary *other)
void SafeRemoveObject (PSafeObject *obj)
 PDECLARE_NOTIFIER (PTimer, PSafeCollection, DeleteObjectsTimeout)
virtual PBoolean SafeRemove (PSafeObject *obj)
 Remove an object to the collection.
virtual PBoolean SafeRemoveAt (PINDEX idx)
 Remove an object to the collection.
- Protected Attributes inherited from PSafeCollection
PCollectioncollection
PMutex collectionMutex
bool deleteObjects
PList< PSafeObjecttoBeRemoved
PMutex removalMutex
PTimer deleteObjectsTimer
- Friends inherited from PObject

Detailed Description

template<class Base>
class PSafeArray< Base >

This class defines a thread-safe array of objects.

See the PSafeObject class for more details. Especially in regard to enumeration of collections.

Member Typedef Documentation

template<class Base >
typedef PSafePtr<Base> PSafeArray< Base >::value_type

The documentation for this class was generated from the following file: