📄 hxmon.h
字号:
{
/*
* IUnknown methods
*/
STDMETHOD(QueryInterface) (THIS_
REFIID riid,
void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/*
* IHXPropWatchResponse methods
*/
/************************************************************************
* Method:
* IHXPropWatchResponse::AddedProp
* Purpose:
* Gets called when a new Property gets added under the Property
* on which the Watch was set. It passes the id of the Property just
* added, its datatype and the id of its immediate parent COMPOSITE
* property.
*/
STDMETHOD(AddedProp) (THIS_
const UINT32 ulId,
const HXPropType propType,
const UINT32 ulParentID) PURE;
/************************************************************************
* Method:
* IHXPropWatchResponse::ModifiedProp
* Purpose:
* Gets called when a watched Property gets modified. It passes
* the id of the Property just modified, its datatype and the
* id of its immediate parent COMPOSITE property.
*/
STDMETHOD(ModifiedProp) (THIS_
const UINT32 ulId,
const HXPropType propType,
const UINT32 ulParentID) PURE;
/************************************************************************
* Method:
* IHXPropWatchResponse::DeletedProp
* Purpose:
* Gets called when a watched Property gets deleted. As can be
* seen, it returns the id of the Property just deleted and
* its immediate parent COMPOSITE property.
*/
STDMETHOD(DeletedProp) (THIS_
const UINT32 ulId,
const UINT32 ulParentID) PURE;
};
/*
*
* Interface:
*
* IHXActiveRegistry
*
* Purpose:
*
* Interface to get IHXActiveUser responsible for a particular property
* from the registry.
*
* IID_IHXActiveRegistry:
*
* {00000603-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXActiveRegistry, 0x00000603, 0x901, 0x11d1, 0x8b, 0x6, 0x0,
0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXActiveRegistry
DECLARE_INTERFACE_(IHXActiveRegistry, IUnknown)
{
/*
* IUnknown methods
*/
STDMETHOD(QueryInterface) (THIS_
REFIID riid,
void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXActiveRegistry::SetAsActive
*
* Method to set prop pName to active and register pUser as
* the active prop user.
*/
STDMETHOD(SetAsActive) (THIS_
const char* pName,
IHXActivePropUser* pUser) PURE;
/************************************************************************
* IHXActiveRegistry::SetAsInactive
*
* Method to remove an IHXActiveUser from Prop activation.
*/
STDMETHOD(SetAsInactive) (THIS_
const char* pName,
IHXActivePropUser* pUser) PURE;
/************************************************************************
* IHXActiveRegistry::IsActive
*
* Tells if prop pName has an active user that must be queried to
* change the value, or if it can just be set.
*/
STDMETHOD_(BOOL, IsActive) (THIS_
const char* pName) PURE;
/************************************************************************
* IHXActiveRegistry::SetActiveInt
*
* Async request to set int pName to ul.
*/
STDMETHOD(SetActiveInt) (THIS_
const char* pName,
UINT32 ul,
IHXActivePropUserResponse* pResponse) PURE;
/************************************************************************
* IHXActiveRegistry::SetActiveStr
*
* Async request to set string pName to string in pBuffer.
*/
STDMETHOD(SetActiveStr) (THIS_
const char* pName,
IHXBuffer* pBuffer,
IHXActivePropUserResponse* pResponse) PURE;
/************************************************************************
* IHXActiveRegistry::SetActiveBuf
*
* Async request to set buffer pName to buffer in pBuffer.
*/
STDMETHOD(SetActiveBuf) (THIS_
const char* pName,
IHXBuffer* pBuffer,
IHXActivePropUserResponse* pResponse) PURE;
/************************************************************************
* IHXActiveRegistry::DeleteActiveProp
*
* Async request to delete the active property.
*/
STDMETHOD(DeleteActiveProp) (THIS_
const char* pName,
IHXActivePropUserResponse* pResponse) PURE;
};
/*
*
* Interface:
*
* IHXActivePropUser
*
* Purpose:
*
* An IHXActivePropUser can be set as the active user of a property in
* an IHXActiveRegistry. This causes the IHXActivePropUser to be consulted
* everytime someone wants to change a property. The difference between this
* and a prop watch is that this is async, and can call a done method with
* failure to cause the prop to not be set, and this get called instead of
* calling into the IHXReg.
*
* IID_IHXActivePropUser:
*
* {00000604-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXActivePropUser, 0x00000604, 0x901, 0x11d1, 0x8b, 0x6, 0x0,
0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXActivePropUser
DECLARE_INTERFACE_(IHXActivePropUser, IUnknown)
{
/*
* IUnknown methods
*/
STDMETHOD(QueryInterface) (THIS_
REFIID riid,
void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXActivePropUser::SetActiveInt
*
* Async request to set int pName to ul.
*/
STDMETHOD(SetActiveInt) (THIS_
const char* pName,
UINT32 ul,
IHXActivePropUserResponse* pResponse) PURE;
/************************************************************************
* IHXActivePropUser::SetActiveStr
*
* Async request to set string pName to string in pBuffer.
*/
STDMETHOD(SetActiveStr) (THIS_
const char* pName,
IHXBuffer* pBuffer,
IHXActivePropUserResponse* pResponse) PURE;
/************************************************************************
* IHXActivePropUser::SetActiveBuf
*
* Async request to set buffer pName to buffer in pBuffer.
*/
STDMETHOD(SetActiveBuf) (THIS_
const char* pName,
IHXBuffer* pBuffer,
IHXActivePropUserResponse* pResponse) PURE;
/************************************************************************
* IHXActivePropUser::DeleteActiveProp
*
* Async request to delete the active property.
*/
STDMETHOD(DeleteActiveProp) (THIS_
const char* pName,
IHXActivePropUserResponse* pResponse) PURE;
};
/*
*
* Interface:
*
* IHXActivePropUserResponse
*
* Purpose:
*
* Gets responses from IHXActivePropUser for queries to set properties
* in the IHXActiveRegistry.
*
*
* IID_IHXActivePropUserResponse:
*
* {00000605-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXActivePropUserResponse, 0x00000605, 0x901, 0x11d1, 0x8b, 0x6, 0x0,
0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXActivePropUserResponse
DECLARE_INTERFACE_(IHXActivePropUserResponse, IUnknown)
{
/*
* IUnknown methods
*/
STDMETHOD(QueryInterface) (THIS_
REFIID riid,
void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* Called with status result on completion of set request.
*/
STDMETHOD(SetActiveIntDone) (THIS_
HX_RESULT res,
const char* pName,
UINT32 ul,
IHXBuffer* pInfo[],
UINT32 ulNumInfo) PURE;
STDMETHOD(SetActiveStrDone) (THIS_
HX_RESULT res,
const char* pName,
IHXBuffer* pBuffer,
IHXBuffer* pInfo[],
UINT32 ulNumInfo) PURE;
STDMETHOD(SetActiveBufDone) (THIS_
HX_RESULT res,
const char* pName,
IHXBuffer* pBuffer,
IHXBuffer* pInfo[],
UINT32 ulNumInfo) PURE;
STDMETHOD(DeleteActivePropDone) (THIS_
HX_RESULT res,
const char* pName,
IHXBuffer* pInfo[],
UINT32 ulNumInfo) PURE;
};
/*
*
* Interface:
*
* IHXCopyRegistry
*
* Purpose:
*
* Allows copying from one registry key to another.
*
*
* IID_IHXCopyRegistry
*
* {00000606-0901-11d1-8B06-00A024406D59}
*
*/
DEFINE_GUID(IID_IHXCopyRegistry, 0x00000606, 0x901, 0x11d1, 0x8b, 0x6, 0x0,
0xa0, 0x24, 0x40, 0x6d, 0x59);
#undef INTERFACE
#define INTERFACE IHXCopyRegistry
DECLARE_INTERFACE_(IHXCopyRegistry, IUnknown)
{
/*
* IUnknown methods
*/
STDMETHOD(QueryInterface) (THIS_
REFIID riid,
void** ppvObj) PURE;
STDMETHOD_(ULONG32,AddRef) (THIS) PURE;
STDMETHOD_(ULONG32,Release) (THIS) PURE;
/************************************************************************
* IHXCopyRegistry::Copy
*
* Here it is! The "Copy" method!
*/
STDMETHOD (CopyByName) (THIS_
const char* pFrom,
const char* pTo) PURE;
};
/*
*
* Interface:
*
* IHXRegistryAltStringHandling
*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -