PTLib Version 2.12.9

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | List of all members
PHashTableInfo Class Reference

`#include <dict.h>`

Inheritance diagram for PHashTableInfo:
[legend]
Collaboration diagram for PHashTableInfo:
[legend]

## Public Types
typedef PHashTableElement | Element

## Public Member Functions
| PHashTableInfo (PINDEX initialSize=0)
| PHashTableInfo (PHashTableElement *const *buffer, PINDEX length, PBoolean dynamic=true)
virtual PObject * | Clone () const
| Clone the object. More...
virtual | ~PHashTableInfo ()
virtual void | DestroyContents ()
| Destroy the container contents. More...
PINDEX | AppendElement (PObject *key, PObject *data)
PObject * | RemoveElement (const PObject &key)
PHashTableElement * | GetElementAt (PINDEX index)
PHashTableElement * | GetElementAt (const PObject &key)
PINDEX | GetElementsIndex (const PObject *obj, PBoolean byVal, PBoolean keys) const
PHashTableElement * | NextElement (PHashTableElement *element) const
PHashTableElement * | PrevElement (PHashTableElement *element) const
Public Member Functions inherited from PBaseArray< PHashTableElement * >
| PBaseArray (PINDEX initialSize=0)
| Construct a new dynamic array of elements of the specified type. More...
| PBaseArray (PHashTableElement *const *buffer, PINDEX length, PBoolean dynamic=true)
| Construct a new dynamic array of elements of the specified type. More...
PBoolean | SetAt (PINDEX index, PHashTableElement *val)
| Set the specific element in the array. More...
PHashTableElement * | GetAt (PINDEX index) const
| Get a value from the array. More...
void | Attach (const PHashTableElement **buffer, PINDEX bufferSize)
| Attach a pointer to a static block to the base array type. More...
PHashTableElement ** | GetPointer (PINDEX minSize=0)
| Get a pointer to the internal array and assure that it is of at least the specified size. More...
PHashTableElement * | operator[] (PINDEX index) const
| Get a value from the array. More...
PHashTableElement *& | operator[] (PINDEX index)
| Get a reference to value from the array. More...
| operator PHashTableElement *const * () const
| Get a pointer to the internal array. More...
PBoolean | Concatenate (const PBaseArray &array)
| Concatenate one array to the end of this array. More...
Public Member Functions inherited from PAbstractArray
| PAbstractArray (PINDEX elementSizeInBytes, PINDEX initialSize=0)
| Create a new dynamic array of `initalSize` elements of `elementSizeInBytes` bytes each. More...
| PAbstractArray (PINDEX elementSizeInBytes, const void *buffer, PINDEX bufferSizeInElements, PBoolean dynamicAllocation)
| Create a new dynamic array of `bufferSizeInElements` elements of `elementSizeInBytes` bytes each. 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...
virtual Comparison | Compare (const PObject &obj) const
| Get the relative rank of the two arrays. More...
virtual PBoolean | SetSize (PINDEX newSize)
| Set the size of the array in elements. More...
void | Attach (const void *buffer, PINDEX bufferSize)
| Attach a pointer to a static block to the base array type. More...
void * | GetPointer (PINDEX minSize=1)
| Get a pointer to the internal array and assure that it is of at least the specified size. More...
PBoolean | Concatenate (const PAbstractArray &array)
| Concatenate one array to the end of this array. More...
Public Member Functions inherited from PContainer
| PContainer (PINDEX initialSize=0)
| Create a new unique container. More...
| PContainer (const PContainer &cont)
| Create a new refernce to container. More...
PContainer & | operator= (const PContainer &cont)
| Assign one container reference to another. More...
virtual | ~PContainer ()
| Destroy the container class. More...
virtual PINDEX | GetSize () const
| Get the current size of the container. More...
PBoolean | SetMinSize (PINDEX minSize)
| Set the minimum size of container. More...
virtual PBoolean | IsEmpty () const
| Determine if the container is empty. More...
PBoolean | IsUnique () const
| Determine if container is unique reference. More...
virtual PBoolean | MakeUnique ()
| Make this instance to be the one and only reference to the container contents. More...
Public Member Functions inherited from PObject
unsigned | GetTraceContextIdentifier () const
| Get PTRACE context identifier. More...
void | SetTraceContextIdentifier (unsigned id)
void | GetTraceContextIdentifier (PObject &obj)
void | GetTraceContextIdentifier (PObject *obj)
void | SetTraceContextIdentifier (const PObject &obj)
void | SetTraceContextIdentifier (const PObject *obj)
virtual | ~PObject ()
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 | 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 const char * | GetClass (unsigned ancestor=0) const
| Get the current dynamic type of the object instance. More...
PBoolean | IsClass (const char *cls) const
virtual PBoolean | InternalIsDescendant (const char *clsName) const
| Determine if the dynamic type of the current instance is a descendent of the specified class. More...
__inline const PObject * | PTraceObjectInstance () const

## Public Attributes
PBoolean | deleteKeys

## Additional Inherited Members
Static Public Member Functions inherited from PObject
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
| Internal function caled from CompareObjectMemoryDirect() 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)
Protected Member Functions inherited from PBaseArray< PHashTableElement * >
| PBaseArray (PContainerReference &reference_)
virtual void | PrintElementOn (ostream &stream, PINDEX index) const
Protected Attributes inherited from PAbstractArray
PINDEX | elementSize
| Size of an element in bytes. More...
char * | theArray
| Pointer to the allocated block of memory. More...
PBoolean | allocatedDynamically
| Flag indicating the array was allocated on the heap. More...
Friends inherited from PObject

## Member Typedef Documentation

typedef PHashTableElement PHashTableInfo::Element

## Constructor & Destructor Documentation

PHashTableInfo::PHashTableInfo | ( | PINDEX | initialSize = `0` | ) |
| inline

Referenced by Clone().

PHashTableInfo::PHashTableInfo | ( | PHashTableElement *const * | buffer,
|  | PINDEX | length,
|  | PBoolean | dynamic = `true`
| ) |  |
| inline

virtual PHashTableInfo::~PHashTableInfo | ( |  | ) |
| inline virtual

References PContainer::Destruct().

## Member Function Documentation

PINDEX PHashTableInfo::AppendElement | ( | PObject * | key,
|  | PObject * | data
| ) |  |

virtual PObject* PHashTableInfo::Clone | ( |  | ) | const
| inline virtual

Clone the object.

Reimplemented from PBaseArray< PHashTableElement * >.

References PContainer::GetSize(), PHashTableInfo(), and PNEW.

virtual void PHashTableInfo::DestroyContents | ( |  | ) |
| virtual

Destroy the container contents.

This function must be defined by the descendent class to do the actual destruction of the contents. It is automatically declared when the `PCONTAINERINFO()` macro is used.

For all descendent classes not immediately inheriting off the PContainer itself, the implementation of DestroyContents() should always call its ancestors function. This is especially relevent if many of the standard container classes, such as arrays, are descended from as memory leaks will occur.

Implements PContainer.

PHashTableElement* PHashTableInfo::GetElementAt | ( | PINDEX | index | ) |

Referenced by PDictionary< K, D >::iterator_base::iterator_base().

PHashTableElement* PHashTableInfo::GetElementAt | ( | const PObject & | key | ) |

PINDEX PHashTableInfo::GetElementsIndex | ( | const PObject * | obj,
|  | PBoolean | byVal,
|  | PBoolean | keys
| ) |  | const

PHashTableElement* PHashTableInfo::NextElement | ( | PHashTableElement * | element | ) | const

PHashTableElement* PHashTableInfo::PrevElement | ( | PHashTableElement * | element | ) | const

PObject* PHashTableInfo::RemoveElement | ( | const PObject & | key | ) |

## Member Data Documentation

PBoolean PHashTableInfo::deleteKeys

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

- dict.h