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 #ifndef ___xmldomxmldecl_h___
00020 #define ___xmldomxmldecl_h___
00021
00022 #include <xercesc/dom/DOMProcessingInstruction.hpp>
00023 #include "IXMLDOMNodeImpl.h"
00024
00025 XERCES_CPP_NAMESPACE_USE
00026
00027 class ATL_NO_VTABLE CXMLDOMXMLDecl :
00028 public CComObjectRootEx<CComSingleThreadModel>,
00029 public IXMLDOMNodeImpl<IXMLDOMProcessingInstruction, &IID_IXMLDOMProcessingInstruction>
00030 {
00031 public:
00032 CXMLDOMXMLDecl()
00033 {}
00034
00035 void FinalRelease()
00036 {
00037 ReleaseOwnerDoc();
00038 }
00039
00040 virtual DOMNode* get_DOMNode() { return xmlDecl;}
00041 virtual DOMNodeType get_DOMNodeType() const { return NODE_PROCESSING_INSTRUCTION; }
00042
00043 DECLARE_NOT_AGGREGATABLE(CXMLDOMXMLDecl)
00044 DECLARE_PROTECT_FINAL_CONSTRUCT()
00045
00046 BEGIN_COM_MAP(CXMLDOMXMLDecl)
00047 COM_INTERFACE_ENTRY(IXMLDOMProcessingInstruction)
00048 COM_INTERFACE_ENTRY(IXMLDOMNode)
00049 COM_INTERFACE_ENTRY(IIBMXMLDOMNodeIdentity)
00050 COM_INTERFACE_ENTRY(IDispatch)
00051 END_COM_MAP()
00052
00053
00054 STDMETHOD(get_target)(BSTR *pVal);
00055 STDMETHOD(get_data)(BSTR *pVal);
00056 STDMETHOD(put_data)(BSTR newVal);
00057
00058 DOMProcessingInstruction* xmlDecl;
00059 };
00060
00061 typedef CComObject<CXMLDOMXMLDecl> CXMLDOMXMLDeclObj;
00062
00063 #endif // ___xmldomprocessinginstruction_h___