+/*!
+ * \class Config_XMLReader
+ * \ingroup Config
+ * \brief Base class for all libxml readers. Provides high-level API
+ * for all xml operations.
+*/
+class Config_XMLReader
+{
+ public:
+ /*!
+ * Constructor
+ * \param theXmlFile - full path to the xml file which will be processed by the reader
+ */
+ CONFIG_EXPORT Config_XMLReader(const std::string& theXmlFile);
+ CONFIG_EXPORT virtual ~Config_XMLReader();
+ /*!
+ * Read all nodes in associated xml file,
+ * recursively if processChildren(xmlNode) is true for the xmlNode.
+ * For each read node the processNode will be called.
+ */
+ CONFIG_EXPORT void readAll();
+ /*!
+ * Returns xmlNodePtr to the root of reader's document
+ * or NULL if not found
+ */
+ CONFIG_EXPORT xmlNodePtr findRoot();