CDROM_READ_TOC_EX structure (ntddcdrm.h)
When drivers query a target CD-ROM device with IOCTL_CDROM_READ_TOC_EX they must define the query with this structure.
Syntax
typedef struct _CDROM_READ_TOC_EX {
UCHAR Format : 4;
UCHAR Reserved1 : 3;
UCHAR Msf : 1;
UCHAR SessionTrack;
UCHAR Reserved2;
UCHAR Reserved3;
} CDROM_READ_TOC_EX, *PCDROM_READ_TOC_EX;
Members
Format
Specifies table of contents read operation, as follows:
Operation | Description |
---|---|
CDROM_READ_TOC_EX_FORMAT_TOC | Query the device for the table of contents for the specified session(s). The SessionTrack member of the structure specifies the starting track number of the session for which the data will be returned. For multi-session CD-ROMs, this command will return the table of contents data for all sessions. For track number 0xAA, it returns the lead-out area of the last complete session. The output data is reported in a CDROM_TOC structure. |
CDROM_READ_TOC_EX_FORMAT_SESSION | Query the device for the first complete session number, the last complete session number, and the last complete session starting address. The output data is reported in a CDROM_TOC_SESSION_DATA structure. With this format, the SessionTrack member is reserved and must be set to zero. This format provides the initiator with quick access to the last finalized session starting address. |
CDROM_READ_TOC_EX_FORMAT_FULL_TOC | Query the device for all Q subcode data in the lead-in table of contents areas starting from the session number specified in the SessionTrack member. The output data is reported in a header structure, CDROM_TOC_FULL_TOC_DATA, followed by a series of track descriptors defined in CDROM_TOC_FULL_TOC_DATA_BLOCK. In this format, logical block addressing (LBA) is not defined, and the Msf member must be set to 1. |
CDROM_READ_TOC_EX_FORMAT_PMA | Query the device for all Q subcode data in the program memory area (PMA). The output data is reported in a CDROM_TOC_PMA_DATA structure. In this format, the SessionTrack member is reserved and must be set to zero. Logical block addressing (LBA) is not defined, and the Msf member must be set to 1. |
CDROM_READ_TOC_EX_FORMAT_ATIP | Query the device for absolute time in pregroove (ATIP) data. The output data is reported in the CDROM_TOC_ATIP_DATA structure. In this format, the SessionTrack member is reserved and must be set to zero. Logical block addressing (LBA) is not defined, and the Msf member must be set to 1. |
CDROM_READ_TOC_EX_FORMAT_CDTEXT | Query the device for CD-TEXT information that is recorded in the lead-in area as R-W subchannel data. The output data is reported in a CDROM_TOC_CD_TEXT_DATA structure with an appended array of CDROM_TOC_CD_TEXT_DATA_BLOCK structures. |
Reserved1
Reserved.
Msf
Indicates the minute-second-frame bit. When set to one, this bit indicates that minute-second-frame (MSF) addressing must be used. When zero, it indicates that logical block addressing (LBA) must be used.
SessionTrack
Specifies the starting track number for which the data will be returned, the session for which the command is targeted, or a reserved field that drivers should set to zero. Which of these values SessionTrack takes depends on the value of the Format member.
Reserved2
Reserved.
Reserved3
Reserved.
Remarks
For further information and definitions of terms used in this reference page and in the reference pages of related structures, see specification T10/1363-D, by National Committee for Information Technology Standards (NCITS).
Requirements
Requirement | Value |
---|---|
Header | ntddcdrm.h (include Ntddcdrm.h) |