Método IPin::QueryInternalConnections (strmif.h)

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

O método QueryInternalConnections recupera os pinos conectados internamente a esse pino (dentro do filtro).

Sintaxe

HRESULT QueryInternalConnections(
  [out]     IPin  **apPin,
  [in, out] ULONG *nPin
);

Parâmetros

[out] apPin

Endereço de uma matriz de ponteiros IPin . O chamador aloca a matriz. O método preenche a matriz com ponteiros IPin . Se nPin for zero, esse parâmetro poderá ser NULL.

[in, out] nPin

Na entrada, especifica o tamanho da matriz. Na saída, especifica o número de pinos conectados internamente.

Retornar valor

Retorna um valor HRESULT . Os possíveis valores incluem os seguintes.

Código de retorno Descrição
S_FALSE
Tamanho insuficiente da matriz.
S_OK
Êxito.
E_NOTIMPL
Não implementado.

Comentários

Esse método retorna informações sobre o mapeamento interno do filtro de pinos de entrada para pinos de saída. Em outras palavras, ele descreve como os pinos de entrada entregam dados para os pinos de saída.

Na maioria dos filtros, cada pino de entrada se conecta a cada pino de saída. Por exemplo, em um filtro de transformação, uma entrada se conecta a uma saída; em um filtro de divisor, uma entrada se conecta a várias saídas. Nesses casos, o método deve simplesmente retornar E_NOTIMPL.

Caso contrário, o método retornará uma matriz de ponteiros IPin , uma para cada pino mapeado internamente para o pino que você consultou. Se você chamar o método em um pino de entrada, a matriz conterá ponteiros para pinos de saída e vice-versa.

O chamador aloca a matriz de ponteiros IPin . Para obter o tamanho de matriz necessário, chame o método uma vez com apPin igual a NULL. O tamanho é retornado no parâmetro nPin . Em seguida, aloque a matriz e chame o método novamente, definindo apPin igual ao endereço da matriz e nPin igual ao tamanho da matriz. Em seguida, o método preenche a matriz com ponteiros IPin . Cada ponteiro retornado tem uma contagem de referência pendente e deve ser liberado pelo chamador.

Esse método tem outro uso que agora foi preterido: o Gerenciador de Grafo de Filtro tratará um filtro como sendo um filtro de renderizador se pelo menos um pino de entrada implementar esse método, mas retornar zero em nPin. No entanto, se você estiver escrevendo um novo filtro de renderizador, deverá implementar a interface IAMFilterMiscFlags em vez de usar esse método para indicar que o filtro é um renderizador.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho strmif.h (inclua Dshow.h)
Biblioteca Strmiids.lib

Confira também

Códigos de erro e êxito

IPin Interface