PCAM_PROCESS_PACKET_ROUTINE funzione di callback (usbcamdi.h)
[CamProcessUSBPacket non è supportato e potrebbe essere modificato o non disponibile in futuro. Usare invece CamProcessUSBPacketEx. ]
Un minidriver della fotocamera CamProcessUSBPacket funzione di callback elabora un pacchetto USB.
Sintassi
PCAM_PROCESS_PACKET_ROUTINE PcamProcessPacketRoutine;
ULONG PcamProcessPacketRoutine(
PDEVICE_OBJECT BusDeviceObject,
PVOID DeviceContext,
PVOID CurrentFrameContext,
PUSBD_ISO_PACKET_DESCRIPTOR SyncPacket,
PVOID SyncBuffer,
PUSBD_ISO_PACKET_DESCRIPTOR DataPacket,
PVOID DataBuffer,
PBOOLEAN FrameComplete,
PBOOLEAN NextFrameIsStill
)
{...}
Parametri
BusDeviceObject
Puntatore all'oggetto dispositivo del minidriver della fotocamera creato dall'hub USB.
DeviceContext
Puntatore al contesto del dispositivo del minidriver della fotocamera.
CurrentFrameContext
Puntatore al contesto del fotogramma del minidriver.
SyncPacket
Puntatore a una struttura USBD_ISO_PACKET_DESCRIPTOR dalla pipe di sincronizzazione. Questo valore è NULL se l'interfaccia ha una sola pipe.
SyncBuffer
Puntatore ai dati per il SyncPacket.
DataPacket
Puntatore a una struttura USBD_ISO_PACKET_DESCRIPTOR dalla pipe dei dati.
DataBuffer
Puntatore a DataPacket.
FrameComplete
Puntatore a un valore BOOLEAN impostato dal minidriver della fotocamera per indicare se si tratta del primo pacchetto di dati per un nuovo fotogramma video. Impostare su TRUE se si tratta del primo pacchetto di dati per un nuovo fotogramma video.
NextFrameIsStill
Puntatore a un valore BOOLEAN impostato dal minidriver della fotocamera per indicare se il fotogramma successivo è ancora un fotogramma. Questo valore deve essere impostato su FALSE se il flusso video fornisce un'immagine live o TRUE se il fotogramma successivo è un'immagine o un flusso di acquisizione di immagini.
Valore restituito
Questa funzione di callback restituisce un ULONG che indica il numero di byte che devono essere copiati nel buffer (RawFrameBuffer o FrameBuffer).
Osservazioni
I minidriver della fotocamera che devono mantenere la compatibilità con le versioni precedenti con USBCAMD originale devono usare la struttura USBCAMD_DEVICE_DATA e le funzioni di callback associate ( ovvero le funzioni di callback che non contengono il suffisso "Ex").
Il minidriver deve completare questa funzione il più rapidamente possibile. L'elaborazione delle immagini deve essere posticipata alla funzione CamProcessRawVideoFrame.
Questa funzione è facoltativa.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | usbcamdi.h (include Usbcamdi.h) |
IRQL | DISPATCH_LEVEL |