PTLib
Version 2.14.3
|
This class defines a thread-safe array of objects. More...
#include <safecoll.h>
Public Types | |
typedef PSafePtr< Base > | value_type |
Additional Inherited Members | |
![]() | |
PSafeColl () | |
Create a safe list collection wrapper around the real collection. More... | |
PSafeColl (const PSafeColl &other) | |
Copy constructor for safe collection. More... | |
PSafeColl & | operator= (const PSafeColl &other) |
Assign one safe collection to another. More... | |
virtual PSafePtr< Base > | Append (Base *obj, PSafetyMode mode=PSafeReference) |
Add an object to the collection. More... | |
virtual PBoolean | Remove (Base *obj) |
Remove an object to the collection. More... | |
virtual PBoolean | RemoveAt (PINDEX idx) |
Remove an object to the collection. More... | |
virtual PSafePtr< Base > | GetAt (PINDEX idx, PSafetyMode mode=PSafeReadWrite) |
Get the instance in the collection of the index. More... | |
virtual PSafePtr< Base > | FindWithLock (const Base &value, PSafetyMode mode=PSafeReadWrite) |
Find the instance in the collection of an object with the same value. More... | |
![]() | |
static const char * | Class () |
Get the name of the class as a C string. More... | |
static __inline const PObject * | PTraceObjectInstance (const char *) |
static __inline const PObject * | PTraceObjectInstance (const PObject *obj) |
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
Internal function caled from CompareObjectMemoryDirect() More... | |
![]() | |
void | CopySafeCollection (PCollection *other) |
void | CopySafeDictionary (PAbstractDictionary *other) |
bool | SafeAddObject (PSafeObject *obj, PSafeObject *old) |
void | SafeRemoveObject (PSafeObject *obj) |
PDECLARE_NOTIFIER (PTimer, PSafeCollection, DeleteObjectsTimeout) | |
virtual PBoolean | SafeRemove (PSafeObject *obj) |
Remove an object to the collection. More... | |
virtual PBoolean | SafeRemoveAt (PINDEX idx) |
Remove an object to the collection. More... | |
![]() | |
PCollection * | collection |
PMutex | collectionMutex |
bool | deleteObjects |
PList< PSafeObject > | toBeRemoved |
PMutex | removalMutex |
PTimer * | m_deleteObjectsTimer |
![]() |
This class defines a thread-safe array of objects.
See the PSafeObject class for more details. Especially in regard to enumeration of collections.
typedef PSafePtr<Base> PSafeArray< Base >::value_type |