21 #ifndef TEMPLATEPARSER_H 
   22 #define TEMPLATEPARSER_H 
   28         #define __MSXML_LIBRARY_DEFINED__ 
   30 #include <xercesc/dom/DOM.hpp> 
   32 #include <xercesc/sax/ErrorHandler.hpp> 
   36 #include "WorkItemPool.h" 
   39 XERCES_CPP_NAMESPACE_USE
 
  113                         NodeMatchReturn Matches( ManagedBuffer buffer, DOMNode *root );
 
  150                         virtual void Parse( DOMNode* );
 
  151                         virtual bool MatchTemplate( ManagedBuffer buffer, DOMNode *root );
 
  154                         string getId()
 const { 
return m_Id; }
 
  160                         const vector< TemplateData >& 
getData()
 const { 
return m_Data; }
 
  161                         const vector< TemplateNode >& 
getChildren()
 const { 
return m_Children; }
 
  165                         const TemplateNode& FindTemplate( 
const string& templateName ) 
const;
 
  185                         bool MatchTemplate( ManagedBuffer buffer, DOMNode *root );
 
  187                         void Parse( DOMNode* );
 
  203                         short acceptNode( 
const DOMNode* node ) 
const;
 
  216                         void ReleaseParseDocument();
 
  236                         bool Matches( ManagedBuffer buffer, XERCES_CPP_NAMESPACE_QUALIFIER DOMNode* root );
 
  255                         static map< std::string, TemplateParser > 
Cache;
 
  270 #endif // TEMPLATEPARSER_H