Compartir a través de


ImplementsHelper (estructura)

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

Sintaxis

template <typename RuntimeClassFlagsT, typename ILst, bool IsDelegateToClass>
friend struct Details::ImplementsHelper;

Parámetros

RuntimeClassFlagsT
Campo de marcas que especifica uno o varios enumeradores RuntimeClassType.

ILst
Lista de identificadores de interfaz.

IsDelegateToClass
Especifique true si la instancia actual de Implements es una clase base del primer identificador de interfaz en ILst; en caso contrario, false.

Comentarios

Ayuda a implementar la estructura Implements.

Esta plantilla recorre una lista de interfaces y las agrega como clases base, y según la información necesaria para habilitar QueryInterface.

Miembros

Métodos protegidos

Nombre Descripción
ImplementsHelper::CanCastTo Obtiene un puntero al identificador de interfaz especificado.
ImplementsHelper::CastToUnknown Obtiene un puntero a la interfaz IUnknown subyacente de la estructura Implements actual.
ImplementsHelper::FillArrayWithIid Inserta el identificador de interfaz especificado por el parámetro de plantilla cero actual en el elemento de matriz especificado.
ImplementsHelper::IidCount Contiene el número de identificadores de interfaz implementados en el objeto Implements actual.

Jerarquía de herencia

ImplementsHelper

Requisitos

Encabezado: implements.h

Espacio de nombres:Microsoft::WRL::Details

ImplementsHelper::CanCastTo

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

HRESULT CanCastTo(
   REFIID riid,
   _Deref_out_ void **ppv
);

HRESULT CanCastTo(
   _In_ const IID &iid,
   _Deref_out_ void **ppv
);

Parámetros

riid
Referencia a un identificador de interfaz.

ppv
Si esta operación se realiza correctamente, un puntero a la interfaz especificada por riid o iid.

iid
Referencia a un identificador de interfaz.

Valor devuelto

S_OK si se realiza correctamente; de lo contrario, un HRESULT que indica el error.

Comentarios

Obtiene un puntero al identificador de interfaz especificado.

ImplementsHelper::CastToUnknown

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

IUnknown* CastToUnknown();

Valor devuelto

Puntero a la interfaz IUnknown subyacente.

Comentarios

Obtiene un puntero a la interfaz IUnknown subyacente de la estructura Implements actual.

ImplementsHelper::FillArrayWithIid

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

void FillArrayWithIid(
   _Inout_ unsigned long *index,
   _Inout_ IID* iids) throw();

Parámetros

índice
Índice de base cero que indica el elemento de matriz inicial de esta operación. Cuando se completa esta operación, index se incrementa en 1.

iids
Matriz de IID de tipos.

Comentarios

Inserta el identificador de interfaz especificado por el parámetro de plantilla cero actual en el elemento de matriz especificado.

ImplementsHelper::IidCount

Admite la infraestructura WRL y no está diseñada para usarse directamente desde el código.

static const unsigned long IidCount;

Comentarios

Contiene el número de identificadores de interfaz implementados en el objeto Implements actual.