X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FConfig%2FConfig_XMLReader.cpp;h=a29eaab64cf67b41d80c4bf7350601b27b3dac59;hb=60e95a5502a6940c6c27ce5d561b3c684b0b0a4f;hp=0f32adeecf5c69998fd011668d3fb181478b68ef;hpb=90b3236f531417dd26780de6bc117bc4d1b55a1a;p=modules%2Fshaper.git diff --git a/src/Config/Config_XMLReader.cpp b/src/Config/Config_XMLReader.cpp index 0f32adeec..a29eaab64 100644 --- a/src/Config/Config_XMLReader.cpp +++ b/src/Config/Config_XMLReader.cpp @@ -1,3 +1,5 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D + /* * Config_XMLReader.cpp * @@ -62,7 +64,7 @@ Config_XMLReader::~Config_XMLReader() xmlFreeDoc(myXmlDoc); } -/* +/*! * 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. @@ -73,7 +75,7 @@ void Config_XMLReader::readAll() readRecursively(aRoot); } -/* +/*! * Allows to customize reader's behavior for a node. Virtual. * The default impl does nothing. (In debug mode prints * some info) @@ -94,7 +96,7 @@ void Config_XMLReader::processNode(xmlNodePtr theNode) } } -/* +/*! * Defines which nodes should be processed recursively. Virtual. * The default impl is to read all nodes. */ @@ -103,8 +105,9 @@ bool Config_XMLReader::processChildren(xmlNodePtr aNode) return true; } -/* - * +/*! + * Returns xmlNodePtr to the root of reader's document + * or NULL if not found */ xmlNodePtr Config_XMLReader::findRoot() { @@ -127,7 +130,7 @@ xmlNodePtr Config_XMLReader::findRoot() return aRoot; } -/* +/*! * Calls processNode() for each child (for some - recursively) * of the given node. * \sa ReadAll() @@ -149,7 +152,7 @@ void Config_XMLReader::readRecursively(xmlNodePtr theParent) } } -/* +/*! * void* -> xmlNodePtr */ xmlNodePtr Config_XMLReader::node(void* theNode) @@ -157,6 +160,9 @@ xmlNodePtr Config_XMLReader::node(void* theNode) return static_cast(theNode); } +/*! + * Gets xml node name + */ std::string Config_XMLReader::getNodeName(xmlNodePtr theNode) { std::string result = ""; @@ -167,6 +173,10 @@ std::string Config_XMLReader::getNodeName(xmlNodePtr theNode) return result; } +/*! + * Retrieves all the necessary info from the validator node. + * Sends ValidatorLoaded event + */ void Config_XMLReader::processValidator(xmlNodePtr theNode) { Events_ID aValidatoEvent = Events_Loop::eventByName(EVENT_VALIDATOR_LOADED); @@ -174,10 +184,10 @@ void Config_XMLReader::processValidator(xmlNodePtr theNode) std::shared_ptr aMessage(new Config_ValidatorMessage(aValidatoEvent, this)); std::string aValidatorId; - std::list aValidatorParameters; - getValidatorInfo(theNode, aValidatorId, aValidatorParameters); + std::list aParameters; + getParametersInfo(theNode, aValidatorId, aParameters); aMessage->setValidatorId(aValidatorId); - aMessage->setValidatorParameters(aValidatorParameters); + aMessage->setValidatorParameters(aParameters); xmlNodePtr aFeatureOrWdgNode = theNode->parent; if (isNode(aFeatureOrWdgNode, NODE_FEATURE, NULL)) { aMessage->setFeatureId(getProperty(aFeatureOrWdgNode, _ID)); @@ -188,14 +198,22 @@ void Config_XMLReader::processValidator(xmlNodePtr theNode) aEvLoop->send(aMessage); } +/*! + * Retrieves all the necessary info from the SelectionFilter node. + * Sends SelectionFilterLoaded event + */ void Config_XMLReader::processSelectionFilter(xmlNodePtr theNode) { Events_ID aFilterEvent = Events_Loop::eventByName(EVENT_SELFILTER_LOADED); Events_Loop* aEvLoop = Events_Loop::loop(); std::shared_ptr aMessage = std::make_shared(aFilterEvent, this); - std::string aSelectionFilterId = getProperty(theNode, _ID); + std::string aSelectionFilterId; + std::list aParameters; + getParametersInfo(theNode, aSelectionFilterId, aParameters); aMessage->setSelectionFilterId(aSelectionFilterId); + aMessage->setFilterParameters(aParameters); + xmlNodePtr aFeatureOrWdgNode = theNode->parent; if (isNode(aFeatureOrWdgNode, NODE_FEATURE, NULL)) { aMessage->setFeatureId(getProperty(aFeatureOrWdgNode, _ID));