DCMTK Version 3.6.9
OFFIS DICOM Toolkit
Loading...
Searching...
No Matches
OFConfigFileCursor Class Reference

structure used by class OFConfigFile to store a cursor pointing to the currently selected section and entry in the config data More...

Public Member Functions

 OFConfigFileCursor (unsigned int maxLevel)
 default constructor
 
 OFConfigFileCursor (const OFConfigFileCursor &source)
 copy constructor
 
 ~OFConfigFileCursor ()
 destructor
 
OFConfigFileCursoroperator= (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

OFConfigFileNodePtrarray_
 the cursor is an array of pointers to OFConfigFileNode objects
 
unsigned int maxLevel_
 depth of tree, i.e. number of entries in array_
 

Detailed Description

structure used by class OFConfigFile to store a cursor pointing to the currently selected section and entry in the config data

Member Function Documentation

◆ first_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.

Parameters
levelcursor level
anchorpointer to anchor node in config tree

◆ getKeyword()

const char * OFConfigFileCursor::getKeyword ( unsigned int level) const
inline

return keyword as C string.

Precondition is that section_valid(level) return true.

Parameters
levelcursor level

References array_, and maxLevel_.

◆ getValue()

const char * OFConfigFileCursor::getValue ( unsigned int level) const
inline

return value as C string Precondition is that section_valid(level) return true.

Parameters
levelcursor level

References array_, and maxLevel_.

◆ insert()

void OFConfigFileCursor::insert ( unsigned int level,
OFConfigFileNode *& newnode,
OFConfigFileNode *& anchor,
OFBool orderedMode )

inserts a new node into the tree at the current cursor position

Parameters
levellevel of insertion
newnodenode to be inserted, must not be NULL
anchorpointer to anchor node of tree, may be modified
orderedModemode flag for processing configuration files. See documentation of OFConfigFile::orderedMode_

◆ next_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.

Parameters
levelcursor level

◆ operator<()

OFBool OFConfigFileCursor::operator< ( const OFConfigFileCursor & ) const
inline

dummy comparison operator, needed by MSVC5 with STL.

Returns
always false

References OFConfigFileCursor().

◆ operator==()

OFBool OFConfigFileCursor::operator== ( const OFConfigFileCursor & ) const
inline

dummy comparison operator, needed by MSVC5 with STL.

Returns
always true

References OFConfigFileCursor().

◆ orderedInsert()

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.

Parameters
parentparent node of new new to be inserted
newnodepointer to new node to be inserted

◆ section_valid()

OFBool OFConfigFileCursor::section_valid ( unsigned int level) const

checks if the cursor points to a valid location up to the given level

Parameters
levelcursor level
Returns
true if valid, false otherwise

◆ set_section()

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 occurrence 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.

Parameters
levelcursor level
keykey value
anchorpointer to anchor node in config tree

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


Generated on Wed Apr 23 2025 for DCMTK Version 3.6.9 by Doxygen 1.13.2