CEnumPins Class
9/8/2008
Esta classe oferece suporte a IEnumPins interface enumeração por chamado CBaseFilter Métodos. O CBaseFilter Oferece suporte à classe a IBaseFilter::EnumPins método.
Cada um dos métodos do essa interface tempo é chamado, o CBaseFilter classe verifica para ver se os pinos que ele enumera foram alterados; Ele faz isso por chamado CBaseFilter::GetPinVersion e compatível que é manter a versão de filtro com a versão que ele armazena durante a construção.
Se um enumerador pino se tornar obsoleto, há um mecanismo para ressincronizando-lo com o filtro. O usuário deve versão de interface e recuperar outra.
Porque a operação enumeração é provável que falham se as alterações versão pino (indicando que o filtro pode ter adicionado ou removido pinos), todas as funções membro nessa classe verificar a versão por chamado função uma membro particular, que chama do filtro de proprietário CBaseFilter::GetPinVersion função membro.
Essas funções membro, em seguida, retornar VFW_E_ENUM_OUT_OF_SYNC Se a versão tiver sido alterado. Isso deve sempre trabalho, a menos que o filtro foi substituído CBaseFilter::GetPinVersion Para fazer algo inesperado.
Todas as funções membro nessa classe que retornam HRESULT e aceitar um ponteiro como um parâmetro retornar E_POINTER quando passado um ponteiro nulo.
Funções membro
Função membro | Descrição |
---|---|
Constrói um CEnumPins WScript.Shell. |
Métodos IUnknown implementada
Método | Descrição |
---|---|
Incrementa a contagem de referência. |
|
Retorna os ponteiros para com suporte interfaces. |
|
Diminui o contagem de referência. |
Métodos IEnumPins implementada
Método | Descrição |
---|---|
Cria um duplicado CEnumPins objeto com o mesmo estado inicial. |
|
Retorna o próximo pino após a atual posição. |
|
Define o atual posição voltar para o início. |
|
Passa sobre um ou mais entradas no enumerador. |
Requisitos
Windows Embedded CE | Windows CE 2.12 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |
Note | Microsoft DirectShow applications and DirectShow filters have different include file and Library requirements For more information, see Setting Up the Build Environment |