00001 #ifndef DOMNamedNodeMap_HEADER_GUARD_
00002 #define DOMNamedNodeMap_HEADER_GUARD_
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 #include <xercesc/util/XercesDefs.hpp>
00026 
00027 XERCES_CPP_NAMESPACE_BEGIN
00028 
00029 
00030 class DOMNode;
00031 
00045 class  DOMNamedNodeMap {
00046 protected:
00047     
00048     
00049     
00052     DOMNamedNodeMap() {};
00054 
00055 private:    
00056     
00057     
00058     
00061     DOMNamedNodeMap(const DOMNamedNodeMap &);
00062     DOMNamedNodeMap & operator = (const DOMNamedNodeMap &);
00064 
00065 public:
00066     
00067     
00068     
00075     virtual ~DOMNamedNodeMap() {};
00077 
00078     
00079     
00080     
00083     
00084     
00085     
00112     virtual DOMNode   *setNamedItem(DOMNode *arg) = 0;
00113 
00114     
00115     
00116     
00129     virtual DOMNode     *item(XMLSize_t index) const = 0;
00130 
00140     virtual DOMNode   *getNamedItem(const XMLCh *name) const = 0;
00141 
00149     virtual XMLSize_t   getLength() const = 0;
00150 
00151     
00152     
00153     
00169     virtual DOMNode    *removeNamedItem(const XMLCh *name) = 0;
00171 
00185     virtual DOMNode   *getNamedItemNS(const XMLCh *namespaceURI,
00186                                             const XMLCh *localName) const = 0;
00187 
00211     virtual DOMNode   *setNamedItemNS(DOMNode *arg) = 0;
00212 
00235     virtual DOMNode     *removeNamedItemNS(const XMLCh *namespaceURI,
00236                                               const XMLCh *localName) = 0;
00238 
00239 };
00240 
00241 #define GetDOMNamedNodeMapMemoryManager   GET_INDIRECT_MM(fOwnerNode)
00242 
00243 XERCES_CPP_NAMESPACE_END
00244 
00245 #endif
00246