Go to the documentation of this file.00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 #ifndef ___xmldomnamednodemap_h___
00023 #define ___xmldomnamednodemap_h___
00024 
00025 #include <xercesc/dom/DOMNamedNodeMap.hpp>
00026 #include "NodeContainerImpl.h"
00027 
00028 XERCES_CPP_NAMESPACE_USE
00029 
00030 class ATL_NO_VTABLE CXMLDOMNamedNodeMap :
00031         public CComObjectRootEx<CComSingleThreadModel>,
00032         public IDispatchImpl<IXMLDOMNamedNodeMap, &IID_IXMLDOMNamedNodeMap, &LIBID_Xerces, XERCES_VERSION_MAJOR, INVK_CAT2_RAW_NUMERIC(XERCES_VERSION_MINOR,XERCES_VERSION_REVISION)>,
00033         public NodeContainerImpl<DOMNamedNodeMap>,
00034         public ISupportErrorInfo
00035 {
00036 public:
00037         CXMLDOMNamedNodeMap()
00038         {}
00039 
00040         void FinalRelease()
00041         {
00042                 ReleaseOwnerDoc();
00043         }
00044 
00045 DECLARE_NOT_AGGREGATABLE(CXMLDOMNamedNodeMap)
00046 DECLARE_PROTECT_FINAL_CONSTRUCT()
00047 
00048 BEGIN_COM_MAP(CXMLDOMNamedNodeMap)
00049         COM_INTERFACE_ENTRY(IXMLDOMNamedNodeMap)
00050         COM_INTERFACE_ENTRY(IDispatch)
00051         COM_INTERFACE_ENTRY(ISupportErrorInfo)
00052 END_COM_MAP()
00053 
00054 
00055         
00056         HRESULT STDMETHODCALLTYPE InterfaceSupportsErrorInfo(REFIID iid);
00057 
00058         
00059         STDMETHOD(getNamedItem)(BSTR name, IXMLDOMNode  * *namedItem);
00060         STDMETHOD(setNamedItem)(IXMLDOMNode  *newItem, IXMLDOMNode  * *nameItem);
00061         STDMETHOD(removeNamedItem)(BSTR name, IXMLDOMNode  * *namedItem);
00062         STDMETHOD(get_item)(long index, IXMLDOMNode  * *pVal);
00063         STDMETHOD(get_length)(long  *pVal);
00064         STDMETHOD(getQualifiedItem)(BSTR baseName, BSTR namespaceURI, IXMLDOMNode  * *node);
00065         STDMETHOD(removeQualifiedItem)(BSTR baseName, BSTR namespaceURI, IXMLDOMNode  * *node);
00066         STDMETHOD(nextNode)(IXMLDOMNode  * *nextItem);
00067         STDMETHOD(reset)();
00068         STDMETHOD(get__newEnum)(IUnknown  * *pVal);
00069 };
00070 
00071 typedef CComObject<CXMLDOMNamedNodeMap> CXMLDOMNamedNodeMapObj;
00072 
00073 #endif // ___xmldomnamednodemap_h___