Função USBD_CalculateUsbBandwidth (usbdlib.h)
A rotina USBD_CalculateUsbBandwidth foi preterida no Windows XP e em sistemas operacionais posteriores. Não use.
Syntax
ULONG USBD_CalculateUsbBandwidth(
[in] ULONG MaxPacketSize,
[in] UCHAR EndpointType,
[in] BOOLEAN LowSpeed
);
Parâmetros
[in] MaxPacketSize
Especifica o tamanho máximo do pacote.
[in] EndpointType
Contém um valor do tipo USBD_PIPE_TYPE que especifica o tipo de pipe.
[in] LowSpeed
Indica, quando TRUE, que o dispositivo é um dispositivo de baixa velocidade. Quando FALSE, esse membro indica que o dispositivo é um dispositivo de alta velocidade.
Retornar valor
A rotina USBD_CalculateUsbBandwidth retorna zero para pontos de extremidade em massa e de controle e a largura de banda consumida em bits por milissegundos. retorna para todos os outros pontos de extremidade.
Comentários
A rotina USBD_CalculateUsbBandwidth aproxima a largura de banda usando o procedimento a seguir. Primeiro, USBD_CalculateUsbBandwidth adiciona o maior tamanho de pacote possível, especificado em MaxPacketSize, à sobrecarga associada ao tipo de ponto de extremidade especificado em EndpointType. Em seguida, USBD_CalculateUsbBandwidth multiplica essa soma por 8 para converter as unidades de bytes por milissegundo em bits por milissegundo . Por fim, USBD_CalculateUsbBandwidth multiplica essa quantidade por 7/6 para considerar os bits de preenchimento. Na pior das hipóteses, haverá um bit de dados de preenchimento enfiados no fluxo de dados para cada seis bits de dados. USBD_CalculateUsbBandwidth usa suposições de pior caso para calcular a largura de banda exigida pelo pipe.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Preterido. |
Plataforma de Destino | Universal |
Cabeçalho | usbdlib.h (inclua Usbdlib.h) |
Biblioteca | Usbd.lib |
IRQL | <=DISPATCH_LEVEL |