summaryrefslogtreecommitdiffstats
path: root/src/uscxml/util/DOM.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/util/DOM.h')
-rw-r--r--src/uscxml/util/DOM.h27
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
};