Public Member Functions | |
OFConfigFileCursor (unsigned int maxLevel) | |
default constructor | |
OFConfigFileCursor (const OFConfigFileCursor &source) | |
copy constructor | |
~OFConfigFileCursor () | |
destructor | |
OFConfigFileCursor & | operator= (const OFConfigFileCursor &source) |
assignment operator | |
void | clear () |
return object to default constructed state (invalid cursor) | |
const char * | getKeyword (unsigned int level) const |
return keyword as C string. | |
const char * | getValue (unsigned int level) const |
return value as C string Precondition is that section_valid(level) return true. | |
OFBool | section_valid (unsigned int level) const |
checks if the cursor points to a valid location up to the given level | |
void | set_section (unsigned int level, const char *key, OFConfigFileNode *anchor) |
sets cursor to the entry with keyword "key" at the given level. | |
void | first_section (unsigned int level, OFConfigFileNode *anchor) |
sets cursor to the first entry at the given level (without changing the cursor position at higher levels). | |
void | next_section (unsigned int level) |
sets cursor to the next entry at the given level (without changing the cursor position at higher levels). | |
void | insert (unsigned int level, OFConfigFileNode *&newnode, OFConfigFileNode *&anchor, OFBool orderedMode) |
inserts a new node into the tree at the current cursor position | |
OFBool | operator< (const OFConfigFileCursor &) const |
dummy comparison operator, needed by MSVC5 with STL. | |
OFBool | operator== (const OFConfigFileCursor &) const |
dummy comparison operator, needed by MSVC5 with STL. | |
Private Member Functions | |
void | orderedInsert (OFConfigFileNode *parent, OFConfigFileNode *&newnode) |
helper method that is called by insert() in ordered mode to insert a new node at a given tree level (i.e. | |
Private Attributes | |
OFConfigFileNodePtr * | array_ |
the cursor is an array of pointers to OFConfigFileNode objects | |
unsigned int | maxLevel_ |
depth of tree, i.e. number of entries in array_ |
Definition at line 194 of file ofconfig.h.
const char* OFConfigFileCursor::getKeyword | ( | unsigned int | level | ) | const [inline] |
return keyword as C string.
Precondition is that section_valid(level) return true.
level | cursor level |
Definition at line 228 of file ofconfig.h.
References array_, OFConfigFileNode::getKeyword(), and maxLevel_.
const char* OFConfigFileCursor::getValue | ( | unsigned int | level | ) | const [inline] |
return value as C string Precondition is that section_valid(level) return true.
level | cursor level |
Definition at line 237 of file ofconfig.h.
References array_, OFConfigFileNode::getValue(), and maxLevel_.
OFBool OFConfigFileCursor::section_valid | ( | unsigned int | level | ) | const |
checks if the cursor points to a valid location up to the given level
level | cursor level |
Referenced by OFConfigFile::section_valid().
void OFConfigFileCursor::set_section | ( | unsigned int | level, | |
const char * | key, | |||
OFConfigFileNode * | anchor | |||
) |
sets cursor to the entry with keyword "key" at the given level.
Cursor must be valid at the level higher than the one specified. If the keyword exists more than once, the first occurance is found. If the keyword does not exist, the cursor becomes invalid at the specified level. The cursor always becomes invalid at all levels lower than specified.
level | cursor level | |
key | key value | |
anchor | pointer to anchor node in config tree |
Referenced by OFConfigFile::set_section().
void OFConfigFileCursor::first_section | ( | unsigned int | level, | |
OFConfigFileNode * | anchor | |||
) |
sets cursor to the first entry at the given level (without changing the cursor position at higher levels).
Cursor must be valid at the level higher than the one specified. If no section is found the cursor becomes invalid at the specified level. The cursor always becomes invalid at all levels lower than specified.
level | cursor level | |
anchor | pointer to anchor node in config tree |
Referenced by OFConfigFile::first_section().
void OFConfigFileCursor::next_section | ( | unsigned int | level | ) |
sets cursor to the next entry at the given level (without changing the cursor position at higher levels).
Cursor must be valid at the level specified. If no section is found the cursor becomes invalid at the specified level. The cursor always becomes invalid at all levels lower than specified.
level | cursor level |
Referenced by OFConfigFile::next_section().
void OFConfigFileCursor::insert | ( | unsigned int | level, | |
OFConfigFileNode *& | newnode, | |||
OFConfigFileNode *& | anchor, | |||
OFBool | orderedMode | |||
) |
inserts a new node into the tree at the current cursor position
level | level of insertion | |
newnode | node to be inserted, must not be NULL | |
anchor | pointer to anchor node of tree, may be modified | |
orderedMode | mode flag for processing configuration files. See documentation of OFConfigFile::orderedMode_ |
OFBool OFConfigFileCursor::operator< | ( | const OFConfigFileCursor & | ) | const [inline] |
dummy comparison operator, needed by MSVC5 with STL.
Definition at line 303 of file ofconfig.h.
OFBool OFConfigFileCursor::operator== | ( | const OFConfigFileCursor & | ) | const [inline] |
dummy comparison operator, needed by MSVC5 with STL.
Definition at line 311 of file ofconfig.h.
void OFConfigFileCursor::orderedInsert | ( | OFConfigFileNode * | parent, | |
OFConfigFileNode *& | newnode | |||
) | [private] |
helper method that is called by insert() in ordered mode to insert a new node at a given tree level (i.e.
within a list of nodes that share the same parent node) in alphabetical order, replacing any older node with identical keyword.
parent | parent node of new new to be inserted | |
newnode | pointer to new node to be inserted |