Método IMFTrackedSample::SetAllocator (mfidl.h)
Define o proprietário do exemplo.
Sintaxe
HRESULT SetAllocator(
[in] IMFAsyncCallback *pSampleAllocator,
[in] IUnknown *pUnkState
);
Parâmetros
[in] pSampleAllocator
Ponteiro para a interface IMFAsyncCallback de um objeto de retorno de chamada. O chamador deve implementar essa interface.
[in] pUnkState
Ponteiro para a interface IUnknown de um objeto de estado, definido pelo chamador. Este parâmetro pode ser NULL. Você pode usar esse objeto para armazenar informações de estado. O objeto é retornado ao chamador quando o retorno de chamada é invocado.
Retornar valor
O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
O proprietário já estava definido. Esse método não pode ser chamado duas vezes no exemplo. |
Comentários
Quando esse método é chamado, o exemplo contém uma contagem de referência adicional em si mesmo. Quando cada outro objeto libera sua referência conta no exemplo, o exemplo invoca o método de retorno de chamada pSampleAllocator . Para obter um ponteiro para o exemplo, chame IMFAsyncResult::GetObject no objeto de resultado assíncrono dado ao método IMFAsyncCallback::Invoke do retorno de chamada.
Depois que o retorno de chamada é invocado, o exemplo limpa o retorno de chamada. Para restabelecer o retorno de chamada, você deve chamar SetAllocator novamente.
É seguro passar o ponteiro da interface IMFSample da amostra como o objeto de estado (pUnkState) para o retorno de chamada. Se pUnkState apontar para o exemplo, o método SetAllocator será responsável pela contagem de referência adicional em pUnkState.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | mfidl.h |
Biblioteca | Strmiids.lib |