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
每个时间单位中要读取的 KB 数,其中时间单位由 ReadTime 指定。 ReadSize 中的0xFFFF值选择驱动器的最佳数据传输速度。
ReadTime
读取 读取 大小为千字节的数据的毫秒数。
WriteSize
每个时间单位中要写入的 KB 数,其中时间单位由 WriteTime 定义。 WriteSize 中的 0xFFFF 值选择驱动器的最佳数据传输速度。
WriteTime
写入 WriteSize 千字节数据的毫秒数。
StartLba
IOCTL_CDROM_SET_SPEED请求的第一个逻辑块地址(以字节为单位)。
EndLba
IOCTL_CDROM_SET_SPEED请求的最后一个逻辑块地址(以字节为单位)。
RotationControl
一个WRITE_ROTATION类型的值,该值指示设备是使用 CLV (恒定线性速度) 旋转还是使用 CLA (恒定角速度) 旋转写入媒体。
RestoreDefaults
一个 BOOLEAN 值,如果 为 TRUE,则指示 CD-ROM 类驱动程序使 CD-ROM 驱动器以其默认的轴速运行。 值为 FALSE 指示类驱动程序从此结构的 ReadSize、 ReadTime、 WriteSize 和 WriteTime 成员计算轴速。
SetExact
一个 BOOLEAN 值,如果 为 TRUE,则指示 CD-ROM 类驱动程序将 CD-ROM 驱动器设置为此结构的 ReadSize、 ReadTime、 WriteSize 和 WriteTime 成员指定的确切速度。 如果类驱动程序无法将轴速设置为这些成员指定的确切值,则请求失败。 SetExact 中的 FALSE 值指示类驱动程序使驱动器的轴速与 ReadSize、ReadTime、WriteSize 和 WriteTime 指定的速度尽可能匹配; 如果驱动器无法以这些成员指定的确切值运行,则类驱动程序不会使请求失败。
RandomAccess
一个 BOOLEAN 值,当 为 TRUE 时,指示 CD-ROM 类驱动程序配置 CD-ROM 驱动器,以便它将在读取和写入操作之间来回切换,以最大程度地提高性能 (数据吞吐量) ,即使读取和写入操作之间的切换会导致特定的读取或写入操作发生得更慢。 换句话说,RandomAccess中的 TRUE 值允许驱动器降低某些单独读取和写入操作的速度,以确保在数据传输中提高整体性能。 值为 FALSE 指示 CD-ROM 类驱动程序配置 CD-ROM 驱动器,以确保读写操作的速度彼此独立。 每个操作的数据传输速率是严格的,驱动器不会改变速度以实现性能提升。
Persistent
一个 BOOLEAN 值,如果 为 TRUE,则指示 CD-ROM 类驱动程序配置 CD-ROM 驱动器,以在用户更改媒体时还原默认速度。 值为 FALSE 指示 CD-ROM 类驱动程序配置 CD-ROM 驱动器以保持其速度,直到计算机重启或类驱动程序使用另一个命令更改速度。
要求
要求 | 值 |
---|---|
Header | ntddcdrm.h (包括 Ntddcdrm.h) |