structure CDROM_SET_STREAMING (ntddcdrm.h)
La structure CDROM_SET_SPEED est utilisée avec la demande IOCTL_CDROM_SET_SPEED pour définir la vitesse de broche d’un lecteur de CD-ROM pendant les transferts isochronieux qui permettent une perte de données.
Syntaxe
typedef struct _CDROM_SET_STREAMING {
CDROM_SPEED_REQUEST RequestType;
ULONG ReadSize;
ULONG ReadTime;
ULONG WriteSize;
ULONG WriteTime;
ULONG StartLba;
ULONG EndLba;
WRITE_ROTATION RotationControl;
BOOLEAN RestoreDefaults;
BOOLEAN SetExact;
BOOLEAN RandomAccess;
BOOLEAN Persistent;
} CDROM_SET_STREAMING, *PCDROM_SET_STREAMING;
Membres
RequestType
Valeur de type CDROM_SPEED_REQUEST qui indique la commande multimédia à utiliser lors de la définition de la vitesse du fuseau.
ReadSize
Nombre de kilo-octets à lire dans chaque unité de temps, où une unité de temps est spécifiée par ReadTime. Une valeur de 0xFFFF dans ReadSize sélectionne la vitesse de transfert de données optimale du lecteur.
ReadTime
Nombre de millisecondes pendant lesquelles lire ReadSize kilo-octets de données.
WriteSize
Nombre de kilo-octets à écrire dans chaque unité de temps, où une unité de temps est définie par WriteTime. Une valeur de 0xFFFF dans WriteSize sélectionne la vitesse de transfert de données optimale du lecteur.
WriteTime
Nombre de millisecondes pendant lesquelles écrire WriteSize kilo-octets de données.
StartLba
Première adresse de bloc logique, en octets, de la demande IOCTL_CDROM_SET_SPEED.
EndLba
Dernière adresse de bloc logique, en octets, de la demande IOCTL_CDROM_SET_SPEED.
RotationControl
Valeur de type WRITE_ROTATION qui indique si l’appareil écrit sur le média à l’aide de la rotation CLV (vitesse linéaire constante) ou de la rotation CLA (vitesse angulaire constante).
RestoreDefaults
Valeur BOOLEAN qui, quand TRUE, indique au pilote de classe CD-ROM de faire exécuter le lecteur de CD-ROM à sa vitesse d’axe par défaut. La valeur FALSE indique au pilote de classe de calculer la vitesse du fuseau à partir des membres ReadSize, ReadTime, WriteSize et WriteTime de cette structure.
SetExact
Valeur BOOLEAN qui, lorsque TRUE, indique au pilote de classe CD-ROM de définir le lecteur de CD-ROM à la vitesse exacte spécifiée par les membres ReadSize, ReadTime, WriteSize et WriteTime de cette structure. Si le pilote de classe ne peut pas définir la vitesse de broche sur la valeur exacte spécifiée par ces membres, la demande échoue. La valeur FALSE dans SetExact indique au pilote de classe de faire en sorte que la vitesse de l’axe du lecteur corresponde le plus possible à la vitesse spécifiée par ReadSize, ReadTime, WriteSize et WriteTime . le pilote de classe n’échoue pas à la demande si le lecteur ne peut pas s’exécuter à la valeur exacte spécifiée par ces membres.
RandomAccess
Valeur BOOLEAN qui, lorsque TRUE, indique au pilote de classe CD-ROM de configurer le lecteur de CD-ROM, afin qu’il bascule entre les opérations de lecture et d’écriture afin d’optimiser les performances (débit de données), même si le basculement entre les opérations de lecture et d’écriture entraîne une opération de lecture ou d’écriture particulière plus lente. En d’autres termes, la valeur TRUE dans RandomAccess permet au lecteur de réduire la vitesse de certaines opérations de lecture et d’écriture individuelles afin de garantir de meilleures performances globales dans les transferts de données. La valeur FALSE indique au pilote de classe CD-ROM de configurer le lecteur de CD-ROM pour garantir les vitesses des opérations de lecture et d’écriture, indépendamment les unes des autres. Le taux de transfert de données de chaque opération est rigide et le lecteur ne modifie pas la vitesse pour obtenir des gains de performances.
Persistent
Valeur BOOLEAN qui, quand TRUE, indique au pilote de classe CD-ROM de configurer le lecteur de CD-ROM pour restaurer la vitesse par défaut lorsque l’utilisateur modifie le média. La valeur FALSE indique au pilote de classe CD-ROM de configurer le lecteur de CD-ROM pour maintenir sa vitesse jusqu’à ce que l’ordinateur redémarre ou que le pilote de classe modifie la vitesse avec une autre commande.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ntddcdrm.h (inclure Ntddcdrm.h) |