Método ISensorClassExtension::Initialize (sensorsclassextension.h)
O método ISensorClassExtension::Initialize inicializa o objeto de extensão da classe de sensor.
Sintaxe
HRESULT Initialize(
IUnknown *pWdfDeviceUnknown,
IUnknown *pSensorDriverUnknown
);
Parâmetros
pWdfDeviceUnknown
Ponteiro IUnknown para a classe de driver que implementa a interface IWDFDevice.
pSensorDriverUnknown
Ponteiro IUnknown para o objeto que implementa a interface de retorno de chamada ISensorDriver.
Retornar valor
Esse método retorna um HRESULT. Os valores possíveis incluem, mas não se limitam a, um dos valores a seguir. Consulte Observações.
Código de retorno | Descrição |
---|---|
S_OK | O método foi bem-sucedido. |
E_POINTER | O argumento era NULL ou a interface IWDFDevice está ausente. |
HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS) | A extensão de classe já está inicializada. |
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED) | A extensão de classe já está inicializada. |
HRESULT_FROM_WIN32(ERROR_NOT_FOUND) | O WPD_OBJECT_ID do sensor não é válido. |
Comentários
Primeiro, crie a extensão de classe de sensor chamando o método COM CoCreateInstance e, em seguida, chame Initialize. Recomendamos que você execute essas etapas de inicialização quando chamado pelo UMDF em IPnpCallbackHardware::OnPrepareHardware. Depois que Initialize retornar, o driver deverá estar pronto para receber retornos de chamada da extensão de classe do sensor. A extensão da classe de sensor chama ISensorDriver::OnGetSupportedSensorObjects durante a inicialização. O driver deve estar pronto para retornar valores para todas as propriedades e campos de dados necessários antes de chamar Initialize.
Como a extensão de classe chama seu driver durante a inicialização, esse método também pode retornar HRESULTs que o driver retorna de ISensorDriver::OnGetSupportedSensorObjects.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | sensorsclassextension.h |
Biblioteca | SensorsClassExtension.lib |