2025-04-27 07:49:33 -04:00

77 lines
2.3 KiB
C++

/*
******************************************************************************
******************************************************************************
*
*
* INTEL CORPORATION PROPRIETARY INFORMATION
* This software is supplied under the terms of a license agreement or
* nondisclosure agreement with Intel Corporation and may not be copied or
* disclosed except in accordance with the terms of that agreement.
*
* Copyright (c) 1997, 1998 Intel Corporation All Rights Reserved
******************************************************************************
******************************************************************************
*
*
*
*
*
*/
#if !defined(__WBEMLOOPBACK_H__)
#define __WBEMLOOPBACK_H__
class CCimObject;
class CWbemLoopBack
{
private:
IWbemServices* m_pIServices;
IWbemClassObject* m_pIGroupRoot;
IWbemClassObject* m_pIBindingRoot;
BOOL m_bConnected;
CString m_cszNamespace;
CString m_cszNWA;
void Connect( IWbemContext* );
void GetNetworkAddr( CString&, IWbemContext*);
// some cached objects for performance enh
CCimObject m_NotifyClass;
CCimObject m_ExStatusClass;
CCimObject m_NullObject;
public:
void Cache( LPWSTR , IWbemClassObject* );
BOOL IsCached( LPWSTR , IWbemClassObject** );
void GetObject(BSTR, IWbemClassObject** , IWbemContext* );
void CreateNewDerivedClass(IWbemClassObject **, BSTR, IWbemContext* );
void CreateNewClass(IWbemClassObject**, IWbemContext* );
void GetNotifyStatusInstance(CCimObject&, ULONG, IWbemContext* );
BOOL GetExtendedStatusInstance( CCimObject& Instance, ULONG ulStatus, BSTR bstrDescription, BSTR bstrOperation, BSTR bstrParameter, IWbemContext* pICtx );
void GetInstanceCreationInstance ( CCimObject&, IUnknown*, IWbemContext* );
void GetInstanceDeletionInstance ( CCimObject&, IUnknown*, IWbemContext* );
void GetClassCreationInstance ( CCimObject&, IUnknown*, IWbemContext* );
void GetClassDeletionInstance ( CCimObject&, IUnknown*, IWbemContext* );
void GetExtrinsicEventInstance ( CEvent& , CCimObject& EventObject );
void AttachServer(BSTR );
void Init( LPWSTR );
CString& NWA ( IWbemContext* );
~CWbemLoopBack();
CWbemLoopBack();
};
#endif // __WBEMLOOPBACK_H__