diff options
author | Stefan Radomski <github@mintwerk.de> | 2017-01-27 21:54:43 (GMT) |
---|---|---|
committer | Stefan Radomski <github@mintwerk.de> | 2017-01-27 21:54:43 (GMT) |
commit | 7f83038a1ef642b883417cc984d1f8ca9f0bc64b (patch) | |
tree | fd9236e866a06b250992e84bbf41324adf93a9fd /src/uscxml/util/DOM.h | |
parent | b450411ee8f0a57f3ec3909d65ecc289189e2b35 (diff) | |
download | uscxml-7f83038a1ef642b883417cc984d1f8ca9f0bc64b.zip uscxml-7f83038a1ef642b883417cc984d1f8ca9f0bc64b.tar.gz uscxml-7f83038a1ef642b883417cc984d1f8ca9f0bc64b.tar.bz2 |
Reactivated BUILD_AS_PLUGINS
Diffstat (limited to 'src/uscxml/util/DOM.h')
-rw-r--r-- | src/uscxml/util/DOM.h | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/uscxml/util/DOM.h b/src/uscxml/util/DOM.h index 2b133d8..48ad321 100644 --- a/src/uscxml/util/DOM.h +++ b/src/uscxml/util/DOM.h @@ -57,9 +57,6 @@ public: const std::string& ns = ""); static std::string idForNode(const XERCESC_NS::DOMNode* node); - static std::list<XERCESC_NS::DOMNode*> getElementsByType(const XERCESC_NS::DOMNode* root, - XERCESC_NS::DOMNode::NodeType type); - static std::list<XERCESC_NS::DOMElement*> inPostFixOrder(const std::set<std::string>& elements, const XERCESC_NS::DOMElement* root, const bool includeEmbeddedDoc = false); @@ -83,8 +80,28 @@ public: static std::list<XERCESC_NS::DOMNode*> filterChildType(const XERCESC_NS::DOMNode::NodeType type, const std::list<XERCESC_NS::DOMNode*>& nodeSet, bool recurse = false); - protected: + enum Order { + POSTFIX, + DOCUMENT, + NO_RECURSE + }; + + static void filterElementGeneric(const std::set<std::string>& elements, + std::list<XERCESC_NS::DOMElement*>& result, + const XERCESC_NS::DOMElement* root, + const Order order, + const bool includeEmbeddedDoc, + const bool includeRoot); + + static void filterTypeGeneric(const std::set<XERCESC_NS::DOMNode::NodeType>& types, + std::list<XERCESC_NS::DOMNode*>& result, + const XERCESC_NS::DOMElement* root, + const Order order, + const bool includeEmbeddedDoc, + const bool includeRoot); + +#if 0 static void inPostFixOrder(const std::set<std::string>& elements, const XERCESC_NS::DOMElement* root, const bool includeEmbeddedDoc, @@ -94,7 +111,7 @@ protected: const XERCESC_NS::DOMElement* root, const bool includeEmbeddedDoc, std::list<XERCESC_NS::DOMElement*>& nodes); - +#endif }; |