00001 #ifndef DOMXPathEvaluator_HEADER_GUARD_
00002 #define DOMXPathEvaluator_HEADER_GUARD_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include <xercesc/util/XercesDefs.hpp>
00021
00022 XERCES_CPP_NAMESPACE_BEGIN
00023
00024 class DOMXPathNSResolver;
00025 class DOMXPathExpression;
00026 class DOMNode;
00027
00041 class DOMXPathEvaluator
00042 {
00043
00044 protected:
00045
00046
00047
00050 DOMXPathEvaluator() {};
00052
00053 private:
00054
00055
00056
00059 DOMXPathEvaluator(const DOMXPathEvaluator &);
00060 DOMXPathEvaluator& operator = (const DOMXPathEvaluator&);
00062
00063 public:
00064
00065
00066
00073 virtual ~DOMXPathEvaluator() {};
00075
00076
00077
00078
00081
00102 virtual const DOMXPathExpression* createExpression(const XMLCh *expression, const DOMXPathNSResolver *resolver) = 0;
00103
00104
00116 virtual const DOMXPathNSResolver* createNSResolver(DOMNode *nodeResolver) = 0;
00117
00118
00163 virtual void* evaluate(const XMLCh *expression, DOMNode *contextNode, const DOMXPathNSResolver *resolver,
00164 unsigned short type, void* result) = 0;
00165
00167 };
00168
00169 XERCES_CPP_NAMESPACE_END
00170
00171 #endif