Meta template struct used to expose all interfaces.
More...
|
template<typename Provider , typename VoidType > |
static tResult | Get (Provider *i_pObj, const char *i_strIID, VoidType *&o_pInterface) |
| Get the interface with IID i_strIID exposed from i_pObj . More...
|
|
template<typename ... Interfaces>
class adtf::ucom::ant::interface_expose< Interfaces >
Meta template struct used to expose all interfaces.
- Template Parameters
-
...Interfaces | Parameter pack containing all interface types to evaluate. |
- See also
- Section The "advanced" way (aka "interface_expose<>") in page The ucom_cast<> in depth explanation for further information.
Definition at line 466 of file adtf_iid.h.
◆ Get()
static tResult Get |
( |
Provider * |
i_pObj, |
|
|
const char * |
i_strIID, |
|
|
VoidType *& |
o_pInterface |
|
) |
| |
|
inlinestaticprivate |
Get the interface with IID i_strIID
exposed from i_pObj
.
- Template Parameters
-
Provider | Type exposing the ...Interfaces. |
VoidType | Where the interface type identified by i_strIID gets statically casted to |
- Precondition
true == std::is_void<VoidType>
- Parameters
-
[in] | i_pObj | Pointer to object of type Provider exposing the requested interface. |
[in] | i_strIID | The queried IID which identifies the interface type to retrieve. |
[out] | o_pInterface | Pointer to reference of type (const) void the interface is cast to. nullptr if IID matches one of the exposed interfaces. |
- Returns
- Standard error code.
- Return values
-
ERR_NOERROR | Everything went fine (o_pInterface != nullptr ) |
ERR_NO_INTERFACE | i_pObj doesn't expose the requested Interface (o_pInterface == nullptr ) |
- See also
- Section The "advanced" way (aka "interface_expose<>") in page The ucom_cast<> in depth explanation
Definition at line 589 of file adtf_iid.h.
Referenced by object< Bases >::GetInterface().