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 
00023 
00024 #ifndef ___bindstatuscallback_h___
00025 #define ___bindstatuscallback_h___
00026 
00027 class CXMLDOMDocument;
00028 
00030 
00031 class ATL_NO_VTABLE CBindStatCallback : 
00032         public CComObjectRootEx<CComSingleThreadModel>,
00033         public IBindStatusCallback
00034 {
00035 public:
00036         CBindStatCallback()
00037                 :m_pDoc(NULL)
00038         {
00039         }
00040 
00041 DECLARE_NOT_AGGREGATABLE(CBindStatCallback)
00042 
00043 DECLARE_PROTECT_FINAL_CONSTRUCT()
00044 
00045 BEGIN_COM_MAP(CBindStatCallback)
00046         COM_INTERFACE_ENTRY(IBindStatusCallback)
00047 END_COM_MAP()
00048 
00049 
00050 public:
00051         STDMETHOD(OnStartBinding)(DWORD dwReserved, IBinding *pBinding);
00052         STDMETHOD(GetPriority)(LONG *pnPriority);
00053         STDMETHOD(OnLowResource)(DWORD reserved);
00054         STDMETHOD(OnProgress)(ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText);
00055         STDMETHOD(OnStopBinding)(HRESULT hresult, LPCWSTR szError);
00056         STDMETHOD(GetBindInfo)(DWORD *pgrfBINDF, BINDINFO *pbindInfo);
00057         STDMETHOD(OnDataAvailable)(DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed);
00058         STDMETHOD(OnObjectAvailable)(REFIID riid, IUnknown *punk);
00059 
00060         CXMLDOMDocument *m_pDoc;
00061 };
00062 
00063 typedef CComObject<CBindStatCallback> CBindStatCallbackObj;
00064 
00065 #endif //___bindstatuscallback_h___