AVC_FUNCTION_GET_PIN_DESCRIPTOR
O código de função AVC_FUNCTION_GET_PIN_DESCRIPTOR obtém o descritor de pin para cada ID de pin (deslocamento de zero).
Bloco de Status de E/S
Se tiver êxito, o driver de protocolo AV/C definirá Irp-IoStatus.Status> como STATUS_SUCCESS.
Outros valores retornados possíveis incluem:
Valor retornado | Descrição |
---|---|
STATUS_TIMEOUT | A solicitação foi feita, mas nenhuma resposta foi recebida antes de todo o tempo limite e o processamento de repetição foi concluído. |
STATUS_REQUEST_ABORTED | Anula imediatamente quando a status de conclusão do IRP é STATUS_REQUEST_ABORTED. Isso indica que o dispositivo foi removido ou não está mais disponível no barramento 1394. |
STATUS_* | Qualquer outro código de retorno indica que ocorreu um erro ou aviso que estava além do escopo do protocolo AV/C. |
Comentários
Essa função usa o membro PinDescriptor da estrutura AVC_MULTIFUNC_IRB, conforme mostrado abaixo.
typedef struct _AVC_MULTIFUNC_IRB {
AVC_IRB Common;
union {
.
.
.
AVC_PIN_DESCRIPTOR PinDescriptor;
.
.
.
};
} AVC_MULTIFUNC_IRB, *PAVC_MULTIFUNC_IRB;
Requisitos
Cabeçalhos: Declarado em avc.h. Inclua avc.h.
Entrada AVC_MULTIFUNC_IRB
Comum
O submembro função desse membro deve ser definido como AVC_FUNCTION_GET_PIN_DESCRIPTOR da enumeração AVC_FUNCTION.
PinDescriptor
Especifica a descrição de um pino em um dispositivo de subunidade AV/C.
Esse código de função não é compatível com instâncias virtuais do avc.sys.
Além do descritor de pin, essa função também pode retornar o endereço de um manipulador intersect e um valor de contexto opaco associado ao manipulador intersect. Se o membro do manipulador intersect for NULL, o driver de subunidade deverá fornecer um manipulador intersect. Se o membro do manipulador intersect não for NULL, um manipulador intersect será fornecido e o driver poderá usá-lo.
Avc.sys nunca fornece uma interseção de dados, mas um driver de filtro (por exemplo, avcstrm.sys) o preenche à medida que a solicitação está sendo concluída de volta pela pilha.
Isso deve ser chamado em IRQL = PASSIVE_LEVEL.