AVC_FUNCTION_SET_CONNECTINFO
O código da função AVC_FUNCTION_SET_CONNECT_INFO define a estrutura AVCCONNECTINFO para cada ID de pino (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 SetConnectInfo da estrutura AVC_MULTIFUNC_IRB , conforme mostrado abaixo.
typedef struct _AVC_MULTIFUNC_IRB {
AVC_IRB Common;
union {
.
.
.
AVC_SETCONNECT_INFO SetConnectInfo;
.
.
.
};
} AVC_MULTIFUNC_IRB, *PAVC_MULTIFUNC_IRB;
Requisitos
Cabeçalhos: Declarado em avc.h (Incluir avc.h)
Entrada AVC_MULTIFUNC_IRB
Comum
O subembero Função desse membro deve ser definido como AVC_FUNCTION_SET_CONNECTINFO da enumeração AVC_FUNCTION.
SetConnectInfo
Especifica as informações de conexão para o dispositivo AV/C.
Esse código de função não é compatível com instâncias virtuais do avc.sys.
Um driver de subunidade deverá usar essa função se fornecer um manipulador de intersecção. A estrutura AVCCONNECTINFO (contida dentro da estrutura AVC_SET_CONNECTINFO) é derivada das estruturas AVCPRECONNECTINFO que são acrescentadas aos intervalos de dados passados para o manipulador intersect.
Depois de determinar que os intervalos de dados são compatíveis, o manipulador intersect gera uma estrutura AVCCONNECTINFO. Essa estrutura é acrescentada ao formato de dados resultante e também enviada ao avc.sys. Não importa se o formato de dados proposto é passado para um melhor posteriormente, pois avc.sys apenas armazena em cache uma estrutura AVCCONNECTINFO.
Isso deve ser chamado em IRQL = PASSIVE_LEVEL.