IOCTL_AVCSTRM_CLASS IOCTL (avcstrm.h)
Un driver di subunit AV/C usa il IRP_MJ_INTERNAL_DEVICE_CONTROL IRP, con il membro IoControlCode impostato su IOCTL_AVCSTRM_CLASS, per comunicare con avcstrm.sys. Il driver ha accesso a tutte le operazioni fornite dal driver di filtro av/C streaming (avcstrm.sys) tramite questa richiesta.
Per altre informazioni su IRP e IOCTLs, vedere Handling IRPs.
Codice principale
Buffer di input
In caso di input, Irp->Parameters->Others.Arguments1 punta a una struttura AVC_STREAM_REQUEST_BLOCK. Il membro function dell'AVC_STREAM_REQUEST_BLOCK specifica il tipo di richiesta. Non impostare direttamente questo membro. Utilizzare la macro INIT_AVCSTRM_HEADER per inizializzare questo membro e membri aggiuntivi della struttura AVC_STREAM_REQUEST_BLOCK. Il membro CommandData del AVC_STREAM_REQUEST_BLOCK è un'unione che specifica i parametri specifici della richiesta. I parametri e il loro significato sono documentati con ogni richiesta (codice della funzione). L'enumerazione AVCSTRM_FUNCTION fornisce un elenco di codici di funzione supportati da avcstrm.sys.
Lunghezza del buffer di input
Lunghezza di una struttura AVC_STREAM_REQUEST_BLOCK.
Buffer di output
Nell'output irp->Parameters->Others.Arguments1 punta alla struttura AVC_STREAM_REQUEST_BLOCK passata come input. Nell'ambito del completamento della richiesta, il conducente del bus riempie alcuni membri del CommandData unione della struttura AVC_STREAM_REQUEST_BLOCK con informazioni per il conducente.
Lunghezza del buffer di output
Lunghezza di una struttura AVC_STREAM_REQUEST_BLOCK.
Blocco di stato
Le informazioni restituite dal driver di streaming AV/C nel blocco di stato I/O sono documentate con ogni richiesta.
Osservazioni
Deve essere chiamato in IRQL = PASSIVE_LEVEL.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | avcstrm.h (include Avcstrm.h) |