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.
79 lines
1.6 KiB
79 lines
1.6 KiB
//***************************************************************************
|
|
|
|
//
|
|
|
|
// File:
|
|
|
|
//
|
|
|
|
// Module: MS SNMP Provider
|
|
|
|
//
|
|
|
|
// Purpose:
|
|
|
|
//
|
|
|
|
// Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
|
|
//
|
|
//***************************************************************************
|
|
|
|
#ifndef _EVTCONS_H_
|
|
#define _EVTCONS_H_
|
|
|
|
#define SMIR_EVT_COUNT 2
|
|
#define SMIR_CHANGE_EVT 0
|
|
#define SMIR_THREAD_EVT 1
|
|
|
|
class CSmirWbemEventConsumer : public ISMIRWbemEventConsumer
|
|
{
|
|
private:
|
|
|
|
LONG m_cRef;
|
|
HANDLE *m_hEvents;
|
|
CNotifyThread *m_callbackThread;
|
|
IWbemServices *m_Serv;
|
|
|
|
//private copy constructors to prevent bcopy
|
|
CSmirWbemEventConsumer(CSmirWbemEventConsumer&);
|
|
const CSmirWbemEventConsumer& operator=(CSmirWbemEventConsumer &);
|
|
|
|
|
|
public:
|
|
|
|
//Implementation
|
|
//===============
|
|
|
|
CSmirWbemEventConsumer(CSmir* psmir);
|
|
|
|
HRESULT Register(CSmir* psmir);
|
|
HRESULT UnRegister(CSmir* psmir, IWbemServices* pServ);
|
|
HRESULT GetUnRegisterParams(IWbemServices** ppServ);
|
|
|
|
~CSmirWbemEventConsumer();
|
|
|
|
|
|
//IUnknown methods
|
|
//=================
|
|
|
|
STDMETHODIMP QueryInterface(IN REFIID riid,OUT PPVOID ppv);
|
|
STDMETHODIMP_(ULONG) AddRef();
|
|
STDMETHODIMP_(ULONG) Release();
|
|
|
|
|
|
//IWbemObjectSink methods
|
|
//=======================
|
|
|
|
STDMETHODIMP_(HRESULT) Indicate( IN long lObjectCount,
|
|
IN IWbemClassObject **ppObjArray
|
|
);
|
|
|
|
STDMETHODIMP_(HRESULT) SetStatus( IN long lFlags,
|
|
IN long lParam,
|
|
IN BSTR strParam,
|
|
IN IWbemClassObject *pObjParam
|
|
);
|
|
};
|
|
|
|
|
|
#endif //_EVTCONS_H_
|