PStringOptions Class Reference

Specialised version of PStringToString to contain a dictionary of options/attributes. More...

`#include <pstring.h>`

Inheritance diagram for PStringOptions:

## Public Member Functions

| PStringOptions ()
| PStringOptions (const PStringToString &other)
PStringOptions & | operator= (const PStringToString &other)
bool | Contains (const char *key) const
| Determine if the specified key is present. More...
bool | Contains (const PString &key) const
bool | Contains (const PCaselessString &key) const
bool | Contains (const PCaselessString &(*key)()) const
PString * | GetAt (const char *key) const
PString * | GetAt (const PString &key) const
PString * | GetAt (const PCaselessString &key) const
PString * | GetAt (const PCaselessString &(*key)()) const
PBoolean | SetAt (const char *key, const PString &data)
PBoolean | SetAt (const PString &key, const PString &data)
PBoolean | SetAt (const PCaselessString &key, const PString &data)
PBoolean | SetAt (const PCaselessString &(*key)(), const PString &data)
PString * | RemoveAt (const char *key)
PString * | RemoveAt (const PString &key)
PString * | RemoveAt (const PCaselessString &key)
PString * | RemoveAt (const PCaselessString &(*key)())
PString | GetString (const char *key, const char *dflt=NULL) const
| Get an option value. More...
PString | GetString (const PString &key, const char *dflt=NULL) const
PString | GetString (const PCaselessString &key, const char *dflt=NULL) const
PString | GetString (const PCaselessString &(*key)(), const char *dflt=NULL) const
bool | SetString (const char *key, const PString &value)
| Set the option value. More...
bool | SetString (const PString &key, const PString &value)
bool | SetString (const PCaselessString &key, const PString &value)
bool | SetString (const PCaselessString &(*key)(), const PString &value)
bool | GetBoolean (const char *key, bool dflt=false) const
| Get the option value as a boolean. More...
bool | GetBoolean (const PString &key, bool dflt=false) const
bool | GetBoolean (const PCaselessString &key, bool dflt=false) const
bool | GetBoolean (const PCaselessString &(*key)(), bool dflt=false) const
void | SetBoolean (const char *key, bool value)
| Set the option value as a boolean. More...
void | SetBoolean (const PString &key, bool value)
void | SetBoolean (const PCaselessString &key, bool value)
void | SetBoolean (const PCaselessString &(*key)(), bool value)
long | GetInteger (const char *key, long dflt=0) const
| Get the option value as an integer. More...
long | GetInteger (const PString &key, long dflt=0) const
long | GetInteger (const PCaselessString &key, long dflt=0) const
long | GetInteger (const PCaselessString &(*key)(), long dflt=0) const
void | SetInteger (const char *key, long value)
| Set an integer value for the particular MIME info field. More...
void | SetInteger (const PString &key, long value)
void | SetInteger (const PCaselessString &key, long value)
void | SetInteger (const PCaselessString &(*key)(), long value)
double | GetReal (const char *key, double dflt=0) const
| Get the option value as a floating point real. More...
double | GetReal (const PString &key, double dflt=0) const
double | GetReal (const PCaselessString &key, double dflt=0) const
double | GetReal (const PCaselessString &(*key)(), double dflt=0) const
void | SetReal (const char *key, double value, int decimals)
| Set a floating point real value for the particular MIME info field. More...
void | SetReal (const PString &key, double value, int decimals)
void | SetReal (const PCaselessString &key, double value, int decimals)
void | SetReal (const PCaselessString &(*key)(), double value, int decimals)
__inline bool | Has (const char *key) const
| Determine of the option exists. More...
__inline bool | Has (const PString &key) const
__inline bool | Has (const PCaselessString &key) const
__inline bool | Has (const PCaselessString &(*key)()) const
__inline PString | Get (const char *key, const char *dflt=NULL) const
| Get the option value. More...
__inline PString | Get (const PString &key, const char *dflt=NULL) const
__inline PString | Get (const PCaselessString &key, const char *dflt=NULL) const
__inline PString | Get (const PCaselessString &(*key)(), const char *dflt=NULL) const
__inline PString | Get (const char *key, const PString &dflt) const
__inline PString | Get (const PString &key, const PString &dflt) const
__inline PString | Get (const PCaselessString &key, const PString &dflt) const
__inline PString | Get (const PCaselessString &(*key)(), const PString &dflt) const
__inline bool | Set (const char *key, const PString &value)
| Set the option value. More...
__inline bool | Set (const PString &key, const PString &value)
__inline bool | Set (const PCaselessString &key, const PString &value)
__inline bool | Set (const PCaselessString &(*key)(), const PString &value)
__inline void | Remove (const char *key)
| Remove option value. More...
__inline void | Remove (const PString &key)
__inline void | Remove (const PCaselessString &key)
__inline void | Remove (const PCaselessString &(*key)())
Public Member Functions inherited from PStringToString
char ** | ToCharArray (bool withEqualSign, PCharArray *storage=NULL) const
| Create an array of C strings. More...
| PStringToString (PINDEX count, const Initialiser *init, PBoolean caselessKeys=false, PBoolean caselessValues=false)
| Initialise the string dictionary of strings from the static array. More...
virtual void | ReadFrom (istream &strm)
| Input the contents of the object from the stream. More...
Public Member Functions inherited from PStringDictionary< K >
| PStringDictionary ()
| Create a new, empty, dictionary. More...
virtual PObject * | Clone () const
| Make a complete duplicate of the dictionary. More...
const PString & | operator[] (const K &key) const
| Get the string contained in the dictionary at the `key` position. More...
PString | operator() (const K &key, const char *dflt=NULL) const
| Get the string contained in the dictionary at the `key` position. More...
PBoolean | Contains (const K &key) const
| Determine if the value of the object is contained in the hash table. More...
virtual PString * | RemoveAt (const K &key)
| Remove an object at the specified key. More...
virtual PString * | GetAt (const K &key) const
| Get the object at the specified key position. More...
virtual PBoolean | SetDataAt (PINDEX index, const PString &str)
| Set the data at the specified ordinal index position in the dictionary. More...
virtual PBoolean | SetAt (const K &key, const PString &str)
| Add a new object to the collection. More...
const K & | GetKeyAt (PINDEX index) const
| Get the key in the dictionary at the ordinal index position. More...
PString & | GetDataAt (PINDEX index) const
| Get the data in the dictionary at the ordinal index position. More...
Public Member Functions inherited from PAbstractDictionary
PINLINE | PAbstractDictionary ()
| Create a new, empty, dictionary. More...
virtual void | PrintOn (ostream &strm) const
| Output the contents of the object to the stream. More...
virtual PINDEX | Insert (const PObject &key, PObject *obj)
| Insert a new object into the dictionary. More...
virtual PINDEX | InsertAt (PINDEX index, PObject *obj)
| Insert a new object at the specified index. More...
virtual PObject * | RemoveAt (PINDEX index)
| Remove an object at the specified index. More...
virtual PBoolean | SetAt (PINDEX index, PObject *val)
| Set the object at the specified index to the new value. More...
virtual PObject * | GetAt (PINDEX index) const
| Get the object at the specified index position. More...
virtual PINDEX | GetObjectsIndex (const PObject *obj) const
| Search the collection for the specific instance of the object. More...
virtual PINDEX | GetValuesIndex (const PObject &obj) const
| Search the collection for the specified value of the object. More...
virtual PBoolean | SetDataAt (PINDEX index, PObject *obj)
| Set the data at the specified ordinal index position in the dictionary. More...
virtual PBoolean | AbstractSetAt (const PObject &key, PObject *obj)
| Add a new object to the collection. More...
virtual PObject & | GetRefAt (const PObject &key) const
| Get the object at the specified key position. More...
virtual PObject * | AbstractGetAt (const PObject &key) const
| Get the object at the specified key position. More...
virtual void | AbstractGetKeys (PArrayObjects &keys) const
| Get an array containing all the keys for the dictionary. More...
Public Member Functions inherited from PHashTable
| PHashTable ()
| Create a new, empty, hash table. More...
virtual Comparison | Compare (const PObject &obj) const
| Get the relative rank of the two hash tables. More...
virtual PBoolean | SetSize (PINDEX newSize)
| This function is meaningless for hash table. More...
PINLINE PBoolean | AbstractContains (const PObject &key) const
| Determine if the value of the object is contained in the hash table. More...
virtual const PObject & | AbstractGetKeyAt (PINDEX index) const
| Get the key in the hash table at the ordinal index position. More...
virtual PObject & | AbstractGetDataAt (PINDEX index) const
| Get the data in the hash table at the ordinal index position. More...
Public Member Functions inherited from PCollection
| PCollection (PINDEX initialSize=0)
| Create a new collection. More...
virtual void | RemoveAll ()
| Remove all of the elements in the collection. More...
PINLINE void | AllowDeleteObjects (PBoolean yes=true)
| Allow or disallow the deletion of the objects contained in the collection. More...
void | DisallowDeleteObjects ()
| Disallow the deletion of the objects contained in the collection. 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
virtual | ~PObject ()
virtual PINDEX | HashFunction () const
| This function yields a hash value required by the `PDictionary` class. 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...
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...

## Additional Inherited Members

Public Types inherited from PHashTable
typedef PHashTableElement | Element
typedef PHashTableInfo | Table
Public Types inherited from PObject
enum | Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
| Result of the comparison operation performed by the `Compare()` function. More...
Static Public Member Functions inherited from PObject
static const char * | Class ()
| Get the name of the class as a C string. More...
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
| Internal function caled from CompareObjectMemoryDirect() More...
Public Attributes inherited from PHashTable
PHashTableInfo * | hashTable
Protected Member Functions inherited from PStringDictionary< K >
| PStringDictionary (int dummy, const PStringDictionary *c)
Protected Member Functions inherited from PAbstractDictionary
PINLINE | PAbstractDictionary (int dummy, const PAbstractDictionary *c)
Protected Member Functions inherited from PCollection
PINLINE | PCollection (int dummy, const PCollection *coll)
| Constructor used in support of the Clone() function. More...
Protected Member Functions inherited from PContainer
| PContainer (int dummy, const PContainer *cont)
| Constructor used in support of the Clone() function. More...
| PContainer (PContainerReference &reference)
| Construct using static PContainerReference. More...
virtual void | DestroyContents ()=0
| Destroy the container contents. More...
virtual void | AssignContents (const PContainer &c)
| Copy the container contents. More...
void | CopyContents (const PContainer &c)
| Copy the container contents. More...
void | CloneContents (const PContainer *src)
| Create a duplicate of the container contents. More...
void | Destruct ()
| Internal function called from container destructors. More...
virtual void | DestroyReference ()
| Destroy the PContainerReference instance. More...
Protected Member Functions inherited from PObject
| PObject ()
| Constructor for PObject, made protected so cannot ever create one on its own. More...
Protected Attributes inherited from PContainer
PContainerReference * | reference

## Detailed Description

Specialised version of PStringToString to contain a dictionary of options/attributes.

This assures that the keys are caseless and has some access functions for bool/int types for ease of access with default values.

## Constructor & Destructor Documentation

PStringOptions::PStringOptions | ( |  | ) |

inline

PStringOptions::PStringOptions | ( | const PStringToString & | other | ) |

inline

## Member Function Documentation

bool PStringOptions::Contains | ( | const char * | key | ) | const

inline

Determine if the specified key is present.

References PStringDictionary< K >::Contains().

Referenced by Has().

bool PStringOptions::Contains | ( | const PString & | key | ) | const

inline

References PStringDictionary< K >::Contains().

bool PStringOptions::Contains | ( | const PCaselessString & | key | ) | const

inline

References PStringDictionary< K >::Contains().

bool PStringOptions::Contains | ( | const PCaselessString &(*)() | key | ) | const

inline

References PStringDictionary< K >::Contains().

__inline PString PStringOptions::Get | ( | const char * | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

Get the option value.

References GetString().

__inline PString PStringOptions::Get | ( | const PString & | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

References GetString().

__inline PString PStringOptions::Get | ( | const PCaselessString & | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

References GetString().

__inline PString PStringOptions::Get | ( | const PCaselessString &(*)() | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

References GetString().

__inline PString PStringOptions::Get | ( | const char * | key,
|  | const PString & | dflt
| ) |  | const

inline

References GetString().

__inline PString PStringOptions::Get | ( | const PString & | key,
|  | const PString & | dflt
| ) |  | const

inline

References GetString().

__inline PString PStringOptions::Get | ( | const PCaselessString & | key,
|  | const PString & | dflt
| ) |  | const

inline

References GetString().

__inline PString PStringOptions::Get | ( | const PCaselessString &(*)() | key,
|  | const PString & | dflt
| ) |  | const

inline

References GetString().

PString* PStringOptions::GetAt | ( | const char * | key | ) | const

inline

References PStringDictionary< K >::GetAt().

PString* PStringOptions::GetAt | ( | const PString & | key | ) | const

inline

References PStringDictionary< K >::GetAt().

PString* PStringOptions::GetAt | ( | const PCaselessString & | key | ) | const

inline

References PStringDictionary< K >::GetAt().

PString* PStringOptions::GetAt | ( | const PCaselessString &(*)() | key | ) | const

inline

References PStringDictionary< K >::GetAt().

bool PStringOptions::GetBoolean | ( | const char * | key,
|  | bool | dflt = `false`
| ) |  | const

inline

Get the option value as a boolean.

References GetBoolean().

Referenced by GetBoolean().

bool PStringOptions::GetBoolean | ( | const PString & | key,
|  | bool | dflt = `false`
| ) |  | const

inline

References GetBoolean().

Referenced by GetBoolean().

bool PStringOptions::GetBoolean | ( | const PCaselessString & | key,
|  | bool | dflt = `false`
| ) |  | const

bool PStringOptions::GetBoolean | ( | const PCaselessString &(*)() | key,
|  | bool | dflt = `false`
| ) |  | const

inline

References GetBoolean().

Referenced by GetBoolean().

long PStringOptions::GetInteger | ( | const char * | key,
|  | long | dflt = `0`
| ) |  | const

inline

Get the option value as an integer.

References GetInteger().

Referenced by GetInteger().

long PStringOptions::GetInteger | ( | const PString & | key,
|  | long | dflt = `0`
| ) |  | const

inline

References GetInteger().

Referenced by GetInteger().

long PStringOptions::GetInteger | ( | const PCaselessString & | key,
|  | long | dflt = `0`
| ) |  | const

long PStringOptions::GetInteger | ( | const PCaselessString &(*)() | key,
|  | long | dflt = `0`
| ) |  | const

inline

References GetInteger().

Referenced by GetInteger().

double PStringOptions::GetReal | ( | const char * | key,
|  | double | dflt = `0`
| ) |  | const

inline

Get the option value as a floating point real.

References GetReal().

Referenced by GetReal().

double PStringOptions::GetReal | ( | const PString & | key,
|  | double | dflt = `0`
| ) |  | const

inline

References GetReal().

Referenced by GetReal().

double PStringOptions::GetReal | ( | const PCaselessString & | key,
|  | double | dflt = `0`
| ) |  | const

double PStringOptions::GetReal | ( | const PCaselessString &(*)() | key,
|  | double | dflt = `0`
| ) |  | const

inline

References GetReal().

Referenced by GetReal().

PString PStringOptions::GetString | ( | const char * | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

Get an option value.

References GetString().

Referenced by Get(), PMIMEInfo::GetComplex(), and GetString().

PString PStringOptions::GetString | ( | const PString & | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

References GetString().

Referenced by GetString().

PString PStringOptions::GetString | ( | const PCaselessString & | key,
|  | const char * | dflt = `NULL`
| ) |  | const

PString PStringOptions::GetString | ( | const PCaselessString &(*)() | key,
|  | const char * | dflt = `NULL`
| ) |  | const

inline

References GetString().

Referenced by GetString().

__inline bool PStringOptions::Has | ( | const char * | key | ) | const

inline

Determine of the option exists.

References Contains().

__inline bool PStringOptions::Has | ( | const PString & | key | ) | const

inline

References Contains().

__inline bool PStringOptions::Has | ( | const PCaselessString & | key | ) | const

inline

References Contains().

__inline bool PStringOptions::Has | ( | const PCaselessString &(*)() | key | ) | const

inline

References Contains().

PStringOptions& PStringOptions::operator= | ( | const PStringToString & | other | ) |

inline

References PContainer::operator=().

__inline void PStringOptions::Remove | ( | const char * | key | ) |

inline

Remove option value.

References RemoveAt().

__inline void PStringOptions::Remove | ( | const PString & | key | ) |

inline

References RemoveAt().

__inline void PStringOptions::Remove | ( | const PCaselessString & | key | ) |

inline

References RemoveAt().

__inline void PStringOptions::Remove | ( | const PCaselessString &(*)() | key | ) |

inline

References RemoveAt().

PString* PStringOptions::RemoveAt | ( | const char * | key | ) |

inline

References RemoveAt().

Referenced by Remove(), and RemoveAt().

PString* PStringOptions::RemoveAt | ( | const PString & | key | ) |

inline

References RemoveAt().

Referenced by RemoveAt().

PString* PStringOptions::RemoveAt | ( | const PCaselessString & | key | ) |

inline

References PContainer::MakeUnique(), and PStringDictionary< K >::RemoveAt().

PString* PStringOptions::RemoveAt | ( | const PCaselessString &(*)() | key | ) |

inline

References RemoveAt().

Referenced by RemoveAt().

__inline bool PStringOptions::Set | ( | const char * | key,
|  | const PString & | value
| ) |  |

inline

Set the option value.

References SetAt().

__inline bool PStringOptions::Set | ( | const PString & | key,
|  | const PString & | value
| ) |  |

inline

References SetAt().

__inline bool PStringOptions::Set | ( | const PCaselessString & | key,
|  | const PString & | value
| ) |  |

inline

References SetAt().

__inline bool PStringOptions::Set | ( | const PCaselessString &(*)() | key,
|  | const PString & | value
| ) |  |

inline

References SetAt().

PBoolean PStringOptions::SetAt | ( | const char * | key,
|  | const PString & | data
| ) |  |

inline

References SetAt().

Referenced by Set(), SetAt(), SetBoolean(), and SetString().

PBoolean PStringOptions::SetAt | ( | const PString & | key,
|  | const PString & | data
| ) |  |

inline

References SetAt().

Referenced by SetAt().

PBoolean PStringOptions::SetAt | ( | const PCaselessString & | key,
|  | const PString & | data
| ) |  |

inline

References PContainer::MakeUnique(), and PStringDictionary< K >::SetAt().

PBoolean PStringOptions::SetAt | ( | const PCaselessString &(*)() | key,
|  | const PString & | data
| ) |  |

inline

References SetAt().

Referenced by SetAt().

void PStringOptions::SetBoolean | ( | const char * | key,
|  | bool | value
| ) |  |

inline

Set the option value as a boolean.

References SetBoolean().

Referenced by SetBoolean().

void PStringOptions::SetBoolean | ( | const PString & | key,
|  | bool | value
| ) |  |

inline

References SetBoolean().

Referenced by SetBoolean().

void PStringOptions::SetBoolean | ( | const PCaselessString & | key,
|  | bool | value
| ) |  |

inline

References SetAt().

void PStringOptions::SetBoolean | ( | const PCaselessString &(*)() | key,
|  | bool | value
| ) |  |

inline

References SetBoolean().

Referenced by SetBoolean().

void PStringOptions::SetInteger | ( | const char * | key,
|  | long | value
| ) |  |

inline

Set an integer value for the particular MIME info field.

References SetInteger().

Referenced by SetInteger().

void PStringOptions::SetInteger | ( | const PString & | key,
|  | long | value
| ) |  |

inline

References SetInteger().

Referenced by SetInteger().

void PStringOptions::SetInteger | ( | const PCaselessString & | key,
|  | long | value
| ) |  |

void PStringOptions::SetInteger | ( | const PCaselessString &(*)() | key,
|  | long | value
| ) |  |

inline

References SetInteger().

Referenced by SetInteger().

void PStringOptions::SetReal | ( | const char * | key,
|  | double | value,
|  | int | decimals
| ) |  |

inline

Set a floating point real value for the particular MIME info field.

References SetReal().

Referenced by SetReal().

void PStringOptions::SetReal | ( | const PString & | key,
|  | double | value,
|  | int | decimals
| ) |  |

inline

References SetReal().

Referenced by SetReal().

void PStringOptions::SetReal | ( | const PCaselessString & | key,
|  | double | value,
|  | int | decimals
| ) |  |

void PStringOptions::SetReal | ( | const PCaselessString &(*)() | key,
|  | double | value,
|  | int | decimals
| ) |  |

inline

References SetReal().

Referenced by SetReal().

bool PStringOptions::SetString | ( | const char * | key,
|  | const PString & | value
| ) |  |

inline

Set the option value.

References SetAt().

bool PStringOptions::SetString | ( | const PString & | key,
|  | const PString & | value
| ) |  |

inline

References SetAt().

bool PStringOptions::SetString | ( | const PCaselessString & | key,
|  | const PString & | value
| ) |  |

inline

References SetAt().

bool PStringOptions::SetString | ( | const PCaselessString &(*)() | key,
|  | const PString & | value
| ) |  |

inline

References SetAt().

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

- pstring.h