RuntimeClassBaseT Structure
Supports the WRL infrastructure and is not intended to be used directly from your code.
Syntax
template <unsigned int RuntimeClassTypeT>
friend struct Details::RuntimeClassBaseT;
Parameters
RuntimeClassTypeT
A field of flags that specifies one or more RuntimeClassType enumerators.
Remarks
Provides helper methods for QueryInterface
operations and getting interface IDs.
Members
Protected Methods
Name | Description |
---|---|
RuntimeClassBaseT::AsIID | Retrieves a pointer to the specified interface ID. |
RuntimeClassBaseT::GetImplementedIIDS | Retrieves an array of interface IDs that are implemented by a specified type. |
Inheritance Hierarchy
RuntimeClassBaseT
Requirements
Header: implements.h
Namespace: Microsoft::WRL::Details
RuntimeClassBaseT::AsIID
Supports the WRL infrastructure and is not intended to be used directly from your code.
template<typename T>
__forceinline static HRESULT AsIID(
_In_ T* implements,
REFIID riid,
_Deref_out_ void **ppvObject
);
Parameters
T
A type that implements the interface ID specified by parameter riid.
implements
A variable of the type specified by template parameter T.
riid
The interface ID to retrieve.
ppvObject
If this operation is successful, a pointer-to-a-pointer to the interface specified by parameter riid.
Return Value
S_OK if successful; otherwise, an HRESULT that describes the error.
Remarks
Retrieves a pointer to the specified interface ID.
RuntimeClassBaseT::GetImplementedIIDS
Supports the WRL infrastructure and is not intended to be used directly from your code.
template<typename T>
__forceinline static HRESULT GetImplementedIIDS(
_In_ T* implements,
_Out_ ULONG *iidCount,
_Deref_out_ _Deref_post_cap_(*iidCount) IID **iids
);
Parameters
T
The type of the implements parameter.
implements
Pointer to the type specified by parameter T.
iidCount
The maximum number of interface IDs to retrieve.
iids
If this operation completes successfully, an array of the interface IDs implemented by type T.
Return Value
S_OK if successful; otherwise, an HRESULT that describes the error.
Remarks
Retrieves an array of interface IDs that are implemented by a specified type.