7#ifndef __CONFIGNODEITER_IMPL_H__
8#define __CONFIGNODEITER_IMPL_H__
21 p_current->setValue(PString::toString(data));
23 data = PString::toValue<T>(
p_current->getString());
27 *
p_out <<
"ConfigNodeIter::getValue : no value in ConfigNode defined at " <<
p_current->getLocation() << std::endl;
41 *
p_out <<
"\tdefined in ConfigNode '"<<
p_current->getName()<<
"'. I am sorry but since this is not yet a file I do not have any line numbers" << std::endl;
50 *
p_out <<
"\tdefined at " <<
p_current->getLocation() << std::endl;
67 if(!
down(childName)){
return false;}
68 if(!
getValue(data, checker)){
return false;}
bool getChildValue(const PString &childName, T &data, const GenericConfigCheck *checker=NULL)
Get a value from the current ConfigNode and check data.
bool p_isWriteMode
True if the ConfigNodeIter is in writing mode.
bool down(const PString &childName)
Move to the child of the current node.
void up()
Move to the parent of the current node.
bool getValue(T &data) const
Get a value from the current ConfigNode.
ConfigNode * p_current
Current ConfigNode.
std::ostream * p_out
std::ostream to be used for the error messages
Generic class for a configuration check.
virtual bool isOk(std::ostream &out) const =0