структура CDROM_SET_STREAMING (ntddcdrm.h)
Структура CDROM_SET_SPEED используется с запросом IOCTL_CDROM_SET_SPEED для задания скорости вращения диска CD-ROM во время инохронной передачи, которая позволяет получить некоторые потери данных.
Синтаксис
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;
Члены
RequestType
Значение CDROM_SPEED_REQUESTтипа, указывающее, какую команду мультимедиа следует использовать при настройке скорости спинделя.
ReadSize
Количество килобайтов для чтения в каждом уроке времени, где задается единица времени ReadTime. Значение 0xFFFF в ReadSize выбирает оптимальную скорость передачи данных диска.
ReadTime
Количество миллисекундах для чтения readSize килобайт данных.
WriteSize
Количество килобайтов для записи в каждой единице времени, где единица времени определяется WriteTime. Значение 0xFFFF в WriteSize выбирает оптимальную скорость передачи данных диска.
WriteTime
Количество миллисекундах, в которых требуется записать WriteSize килобайт данных.
StartLba
Первый логический адрес блока в байтах запроса IOCTL_CDROM_SET_SPEED.
EndLba
Последний адрес логического блока в байтах запроса IOCTL_CDROM_SET_SPEED.
RotationControl
Значение WRITE_ROTATIONтипа, указывающее, будет ли устройство записывать в носитель с помощью поворота CLV (постоянная линейная скорость) или поворотА CLA (постоянная угловая скорость).
RestoreDefaults
Логическое значение, которое, когда TRUE, указывает драйверу класса CD-ROM выполнить запуск диска CD-ROM по умолчанию. Значение FALSE указывает драйверу класса вычислять скорость вращения от ReadSize, ReadTime, WriteSizeи элементов записи этой структуры.
SetExact
Значение BOOLEAN, которое, если TRUE, указывает драйверу класса CD-ROM задать CD-ROM диск точной скорости, указанной ReadSize , ReadTime, WriteSizeи WriteTime элементов этой структуры. Если драйвер класса не может задать скорость шпинделя точному значению, указанному этими элементами, запрос завершается ошибкой. Значение FALSE в SetExact указывает драйверу класса сделать скорость вращения диска максимально точной скоростью, указанной ReadSize, ReadTime, WriteSizeи WriteTime; Драйвер класса не завершает запрос, если диск не может выполняться с точным значением, указанным этими элементами.
RandomAccess
Логическое значение, которое, когда TRUE, указывает драйверу класса CD-ROM настроить диск CD-ROM, чтобы он переключался между операциями чтения и записи для повышения производительности (пропускной способности данных), даже если переключение между операциями чтения и записи приводит к более медленному выполнению операций чтения или записи. Другими словами, значение TRUE в RandomAccess позволяет диску снизить скорость некоторых отдельных операций чтения и записи, чтобы повысить общую производительность передачи данных. Значение FALSE указывает драйверу класса CD-ROM настроить CD-ROM диск для обеспечения скорости операций чтения и записи, независимо друг от друга. Скорость передачи данных для каждой операции является жесткой, и диск не изменит скорость для достижения повышения производительности.
Persistent
Логическое значение, которое, когда TRUE, указывает драйверу класса CD-ROM настроить диск CD-ROM для восстановления скорости по умолчанию при изменении носителя пользователем. Значение FALSE указывает драйверу класса CD-ROM настроить диск CD-ROM для поддержания скорости, пока компьютер не перезагрузится или драйвер класса изменяет скорость с другой командой.
Требования
Требование | Ценность |
---|---|
заголовка | ntddcdrm.h (include Ntddcdrm.h) |