Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

51 lines
1.3 KiB

#ifndef __ASYN_OBJECT_ASYNC_DJFDVINOTHDLKJ
#define __ASYN_OBJECT_ASYNC_DJFDVINOTHDLKJ
#include "Wbemidl.h"
#include "DataSrc.h"
enum ENUMTYPE
{
ENUM_NAMESPACE,
ENUM_CLASS,
ENUM_INSTANCE,
ENUM_SCOPE_INSTANCE
};
class CAsyncObjectSink : public IWbemObjectSink
{
// Declare the reference count for the object.
LONG m_lRef;
struct NSNODE *m_pParent;
HTREEITEM m_hItem;
HWND m_hTreeWnd;
DataSource *m_pDataSrc;
ENUMTYPE m_enumType;
bool m_bChildren;
IWbemObjectSink *m_pStub;
public:
CAsyncObjectSink(HWND hTreeWnd, HTREEITEM hItem,struct NSNODE *parent,DataSource *dataSrc, ENUMTYPE eType);
~CAsyncObjectSink();
// IUnknown methods
virtual ULONG STDMETHODCALLTYPE AddRef();
virtual ULONG STDMETHODCALLTYPE Release();
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void** ppv);
// IWbemObjectSink methods
virtual HRESULT STDMETHODCALLTYPE Indicate(
/* [in] */ long lObjectCount,
/* [size_is][in] */ IWbemClassObject __RPC_FAR *__RPC_FAR *apObjArray);
virtual HRESULT STDMETHODCALLTYPE SetStatus(
/* [in] */ long lFlags,
/* [in] */ HRESULT hResult,
/* [in] */ BSTR strParam,
/* [in] */ IWbemClassObject __RPC_FAR *pObjParam);
HRESULT SetSinkStub(IWbemObjectSink *pStub);
IWbemObjectSink* GetSinkStub();
};
#endif //__ASYN_OBJECT_ASYNC_DJFDVINOTHDLKJ