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.

Confira também

AVC_MULTIFUNC_IRB

AVC_SETCONNECT_INFO

AVCCONNECTINFO

AVC_FUNCTION

Manipulador intersect AV/C