|
enum | Comparison { LessThan = -1,
EqualTo = 0,
GreaterThan = 1
} |
| Result of the comparison operation performed by the Compare() function. More...
|
|
__inline unsigned | GetTraceContextIdentifier () const |
| Get PTRACE context identifier. More...
|
|
__inline void | SetTraceContextIdentifier (unsigned id) |
|
__inline void | SetTraceContextIdentifier (const PObject &obj) |
|
__inline void | SetTraceContextIdentifier (const PObject *obj) |
|
__inline void | CopyTraceContextIdentifier (PObject &obj) const |
|
__inline void | CopyTraceContextIdentifier (PObject *obj) const |
|
virtual | ~PObject () |
|
__inline const char * | GetClass () const |
|
__inline bool | IsClass (const char *name) const |
|
__inline const PObject * | PTraceObjectInstance () const |
|
virtual PObject * | Clone () const |
| Create a copy of the class on the heap. More...
|
|
template<class CLS > |
CLS * | CloneAs () const |
| As for Clone() but converts to specified type. More...
|
|
virtual PINDEX | HashFunction () const |
| This function yields a hash value required by the PDictionary class. More...
|
|
virtual Comparison | Compare (const PObject &obj) const |
| Compare the two objects and return their relative rank. More...
|
|
virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const |
| Determine the byte wise comparison of two objects. More...
|
|
bool | operator== (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator!= (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator< (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator> (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator<= (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator>= (const PObject &obj) const |
| Compare the two objects. More...
|
|
virtual void | PrintOn (ostream &strm) const |
| Output the contents of the object to the stream. More...
|
|
virtual void | ReadFrom (istream &strm) |
| Input the contents of the object from the stream. More...
|
|
static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject &from) |
|
static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject *from) |
|
static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject &from) |
|
static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject *from) |
|
static __inline const char * | Class () |
|
static __inline const PObject * | PTraceObjectInstance (const char *) |
|
static __inline const PObject * | PTraceObjectInstance (const PObject *obj) |
|
template<typename T > |
static Comparison | Compare2 (T v1, T v2) |
| Compare two types, returning Comparison type. More...
|
|
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
| Internal function caled from CompareObjectMemoryDirect() More...
|
|
This is the base class for objects that use the smart pointer system.
In conjunction with the PSmartPointer
class, this class creates objects that can have the automatic deletion of the object instance when there are no more smart pointer instances pointing to it.
A PSmartObject
carries the reference count that the PSmartPointer
requires to determine if the pointer is needed any more and should be deleted.