ReactOS 0.4.15-dev-7842-g558ab78
ntddcdrm.h
Go to the documentation of this file.
1/*
2 * ntddcdrm.h
3 *
4 * CDROM IOCTL interface.
5 *
6 * This file is part of the w32api package.
7 *
8 * Contributors:
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
10 *
11 * THIS SOFTWARE IS NOT COPYRIGHTED
12 *
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
15 *
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 *
21 */
22
23#ifndef _NTDDCDRM_
24#define _NTDDCDRM_
25
26#include "ntddstor.h"
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#define IOCTL_CDROM_BASE FILE_DEVICE_CD_ROM
33
34#define IOCTL_CDROM_READ_TOC \
35 CTL_CODE(IOCTL_CDROM_BASE, 0x0000, METHOD_BUFFERED, FILE_READ_ACCESS)
36
37#define IOCTL_CDROM_SEEK_AUDIO_MSF \
38 CTL_CODE(IOCTL_CDROM_BASE, 0x0001, METHOD_BUFFERED, FILE_READ_ACCESS)
39
40#define IOCTL_CDROM_STOP_AUDIO \
41 CTL_CODE(IOCTL_CDROM_BASE, 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS)
42
43#define IOCTL_CDROM_PAUSE_AUDIO \
44 CTL_CODE(IOCTL_CDROM_BASE, 0x0003, METHOD_BUFFERED, FILE_READ_ACCESS)
45
46#define IOCTL_CDROM_RESUME_AUDIO \
47 CTL_CODE(IOCTL_CDROM_BASE, 0x0004, METHOD_BUFFERED, FILE_READ_ACCESS)
48
49#define IOCTL_CDROM_GET_VOLUME \
50 CTL_CODE(IOCTL_CDROM_BASE, 0x0005, METHOD_BUFFERED, FILE_READ_ACCESS)
51
52#define IOCTL_CDROM_PLAY_AUDIO_MSF \
53 CTL_CODE(IOCTL_CDROM_BASE, 0x0006, METHOD_BUFFERED, FILE_READ_ACCESS)
54
55#define IOCTL_CDROM_SET_VOLUME \
56 CTL_CODE(IOCTL_CDROM_BASE, 0x000A, METHOD_BUFFERED, FILE_READ_ACCESS)
57
58#define IOCTL_CDROM_READ_Q_CHANNEL \
59 CTL_CODE(IOCTL_CDROM_BASE, 0x000B, METHOD_BUFFERED, FILE_READ_ACCESS)
60
61#define IOCTL_CDROM_GET_CONTROL \
62 CTL_CODE(IOCTL_CDROM_BASE, 0x000D, METHOD_BUFFERED, FILE_READ_ACCESS)
63
64#define IOCTL_CDROM_GET_LAST_SESSION \
65 CTL_CODE(IOCTL_CDROM_BASE, 0x000E, METHOD_BUFFERED, FILE_READ_ACCESS)
66
67#define IOCTL_CDROM_RAW_READ \
68 CTL_CODE(IOCTL_CDROM_BASE, 0x000F, METHOD_OUT_DIRECT, FILE_READ_ACCESS)
69
70#define IOCTL_CDROM_DISK_TYPE \
71 CTL_CODE(IOCTL_CDROM_BASE, 0x0010, METHOD_BUFFERED, FILE_ANY_ACCESS)
72
73#define IOCTL_CDROM_GET_DRIVE_GEOMETRY \
74 CTL_CODE(IOCTL_CDROM_BASE, 0x0013, METHOD_BUFFERED, FILE_READ_ACCESS)
75
76#define IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX \
77 CTL_CODE(IOCTL_CDROM_BASE, 0x0014, METHOD_BUFFERED, FILE_READ_ACCESS)
78
79#define IOCTL_CDROM_READ_TOC_EX \
80 CTL_CODE(IOCTL_CDROM_BASE, 0x0015, METHOD_BUFFERED, FILE_READ_ACCESS)
81
82#define IOCTL_CDROM_GET_CONFIGURATION \
83 CTL_CODE(IOCTL_CDROM_BASE, 0x0016, METHOD_BUFFERED, FILE_READ_ACCESS)
84
85#define IOCTL_CDROM_EXCLUSIVE_ACCESS \
86 CTL_CODE(IOCTL_CDROM_BASE, 0x0017, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
87
88#define IOCTL_CDROM_SET_SPEED \
89 CTL_CODE(IOCTL_CDROM_BASE, 0x0018, METHOD_BUFFERED, FILE_READ_ACCESS)
90
91#define IOCTL_CDROM_GET_INQUIRY_DATA \
92 CTL_CODE(IOCTL_CDROM_BASE, 0x0019, METHOD_BUFFERED, FILE_READ_ACCESS)
93
94#define IOCTL_CDROM_ENABLE_STREAMING \
95 CTL_CODE(IOCTL_CDROM_BASE, 0x001A, METHOD_BUFFERED, FILE_READ_ACCESS)
96
97#define IOCTL_CDROM_SEND_OPC_INFORMATION \
98 CTL_CODE(IOCTL_CDROM_BASE, 0x001B, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
99
100#define IOCTL_CDROM_GET_PERFORMANCE \
101 CTL_CODE(IOCTL_CDROM_BASE, 0x001C, METHOD_BUFFERED, FILE_READ_ACCESS)
102
103#define IOCTL_CDROM_CHECK_VERIFY \
104 CTL_CODE(IOCTL_CDROM_BASE, 0x0200, METHOD_BUFFERED, FILE_READ_ACCESS)
105
106#define IOCTL_CDROM_MEDIA_REMOVAL \
107 CTL_CODE(IOCTL_CDROM_BASE, 0x0201, METHOD_BUFFERED, FILE_READ_ACCESS)
108
109#define IOCTL_CDROM_EJECT_MEDIA \
110 CTL_CODE(IOCTL_CDROM_BASE, 0x0202, METHOD_BUFFERED, FILE_READ_ACCESS)
111
112#define IOCTL_CDROM_LOAD_MEDIA \
113 CTL_CODE(IOCTL_CDROM_BASE, 0x0203, METHOD_BUFFERED, FILE_READ_ACCESS)
114
115#define IOCTL_CDROM_RESERVE \
116 CTL_CODE(IOCTL_CDROM_BASE, 0x0204, METHOD_BUFFERED, FILE_READ_ACCESS)
117
118#define IOCTL_CDROM_RELEASE \
119 CTL_CODE(IOCTL_CDROM_BASE, 0x0205, METHOD_BUFFERED, FILE_READ_ACCESS)
120
121#define IOCTL_CDROM_FIND_NEW_DEVICES \
122 CTL_CODE(IOCTL_CDROM_BASE, 0x0206, METHOD_BUFFERED, FILE_READ_ACCESS)
123
124#define IOCTL_CDROM_SIMBAD \
125 CTL_CODE(IOCTL_CDROM_BASE, 0x1003, METHOD_BUFFERED, FILE_READ_ACCESS)
126
127
128#define MINIMUM_CDROM_INQUIRY_SIZE 36 // RTL_SIZEOF_THROUGH_FIELD(INQUIRYDATA, ProductRevisionLevel)
129#define MAXIMUM_CDROM_INQUIRY_SIZE 260 // MAXUCHAR + RTL_SIZEOF_THROUGH_FIELD(INQUIRYDATA, AdditionalLength)
130
131#define MAXIMUM_NUMBER_TRACKS 100
132#define MAXIMUM_CDROM_SIZE 804
133#define MINIMUM_CDROM_READ_TOC_EX_SIZE 2
134
135typedef struct _TRACK_DATA {
143
144/* CDROM_DISK_DATA.DiskData flags */
145#define CDROM_DISK_AUDIO_TRACK 0x00000001
146#define CDROM_DISK_DATA_TRACK 0x00000002
147
148typedef struct _CDROM_DISK_DATA {
151
152typedef struct _CDROM_PLAY_AUDIO_MSF {
160
161/* CDROM_READ_TOC_EX.Format constants */
162#define CDROM_READ_TOC_EX_FORMAT_TOC 0x00
163#define CDROM_READ_TOC_EX_FORMAT_SESSION 0x01
164#define CDROM_READ_TOC_EX_FORMAT_FULL_TOC 0x02
165#define CDROM_READ_TOC_EX_FORMAT_PMA 0x03
166#define CDROM_READ_TOC_EX_FORMAT_ATIP 0x04
167#define CDROM_READ_TOC_EX_FORMAT_CDTEXT 0x05
168
169typedef struct _CDROM_READ_TOC_EX {
177
178typedef struct _CDROM_SEEK_AUDIO_MSF {
183
184/* CDROM_SUB_Q_DATA_FORMAT.Format constants */
185#define IOCTL_CDROM_SUB_Q_CHANNEL 0x00
186#define IOCTL_CDROM_CURRENT_POSITION 0x01
187#define IOCTL_CDROM_MEDIA_CATALOG 0x02
188#define IOCTL_CDROM_TRACK_ISRC 0x03
189
194
195typedef struct _CDROM_TOC {
201
202#define CDROM_TOC_SIZE sizeof(CDROM_TOC)
203
210
237
238typedef struct _CDROM_TOC_ATIP_DATA {
244
245/* CDROM_TOC_CD_TEXT_DATA_BLOCK.PackType constants */
246#define CDROM_CD_TEXT_PACK_ALBUM_NAME 0x80
247#define CDROM_CD_TEXT_PACK_PERFORMER 0x81
248#define CDROM_CD_TEXT_PACK_SONGWRITER 0x82
249#define CDROM_CD_TEXT_PACK_COMPOSER 0x83
250#define CDROM_CD_TEXT_PACK_ARRANGER 0x84
251#define CDROM_CD_TEXT_PACK_MESSAGES 0x85
252#define CDROM_CD_TEXT_PACK_DISC_ID 0x86
253#define CDROM_CD_TEXT_PACK_GENRE 0x87
254#define CDROM_CD_TEXT_PACK_TOC_INFO 0x88
255#define CDROM_CD_TEXT_PACK_TOC_INFO2 0x89
256#define CDROM_CD_TEXT_PACK_UPC_EAN 0x8e
257#define CDROM_CD_TEXT_PACK_SIZE_INFO 0x8f
258
267 _ANONYMOUS_UNION union {
273
280
281/* CDROM_TOC_FULL_TOC_DATA_BLOCK.Adr constants */
282#define ADR_NO_MODE_INFORMATION 0x0
283#define ADR_ENCODES_CURRENT_POSITION 0x1
284#define ADR_ENCODES_MEDIA_CATALOG 0x2
285#define ADR_ENCODES_ISRC 0x3
286
297
304
305typedef struct _CDROM_TOC_PMA_DATA {
311
312/* SUB_Q_HEADER.AudioStatus constants */
313#define AUDIO_STATUS_NOT_SUPPORTED 0x00
314#define AUDIO_STATUS_IN_PROGRESS 0x11
315#define AUDIO_STATUS_PAUSED 0x12
316#define AUDIO_STATUS_PLAY_COMPLETE 0x13
317#define AUDIO_STATUS_PLAY_ERROR 0x14
318#define AUDIO_STATUS_NO_STATUS 0x15
319
320typedef struct _SUB_Q_HEADER {
325
334
335typedef struct _SUB_Q_TRACK_ISRC {
345
356
357typedef union _SUB_Q_CHANNEL_DATA {
362
363/* CDROM_AUDIO_CONTROL.LbaFormat constants */
364#define AUDIO_WITH_PREEMPHASIS 0x1
365#define DIGITAL_COPY_PERMITTED 0x2
366#define AUDIO_DATA_TRACK 0x4
367#define TWO_FOUR_CHANNEL_AUDIO 0x8
368
369typedef struct _CDROM_AUDIO_CONTROL {
373
374typedef struct _VOLUME_CONTROL {
377
378typedef enum _TRACK_MODE_TYPE {
386
387#define CD_RAW_READ_C2_SIZE ( 296 )
388#define CD_RAW_READ_SUBCODE_SIZE ( 96)
389#define CD_RAW_SECTOR_WITH_C2_SIZE (2352+296 )
390#define CD_RAW_SECTOR_WITH_SUBCODE_SIZE (2352 +96)
391#define CD_RAW_SECTOR_WITH_C2_AND_SUBCODE_SIZE (2352+296+96)
392
393typedef struct __RAW_READ_INFO {
398
399
400// for IOCTL_CDROM_EXCLUSIVE_ACCESS
401
402#define CDROM_EXCLUSIVE_CALLER_LENGTH 64
403
404#define CDROM_LOCK_IGNORE_VOLUME (1 << 0)
405#define CDROM_NO_MEDIA_NOTIFICATIONS (1 << 1)
406
407#define CDROM_NOT_IN_EXCLUSIVE_MODE 0
408#define CDROM_IN_EXCLUSIVE_MODE 1
409
411{
416
418{
422
424{
428
430{
434
435
436// for IOCTL_CDROM_SET_SPEED
437
439{
443
444typedef enum _WRITE_ROTATION
445{
449
450typedef struct _CDROM_SET_SPEED
451{
457
459{
473
474
475// for IOCTL_CDROM_ENABLE_STREAMING
476
478{
484
488
489
490// for IOCTL_CDROM_SEND_OPC_INFORMATION
491
493{
494 SimpleOpcInfo = 1
496
498{
503
504
505// for IOCTL_CDROM_GET_PERFORMANCE
506
508{
512
514{
518
520{
525
527{
530
532{
539
541{
544
546{
554
556{
562
564{
568
570{
581
582#ifdef __cplusplus
583}
584#endif
585
586#endif /* _NTDDCDRM_ */
unsigned char BOOLEAN
#define _ANONYMOUS_UNION
Definition: ntbasedef.h:30
struct _CDROM_PERFORMANCE_HEADER * PCDROM_PERFORMANCE_HEADER
union _SUB_Q_CHANNEL_DATA SUB_Q_CHANNEL_DATA
struct _SUB_Q_HEADER SUB_Q_HEADER
struct _CDROM_EXCEPTION_PERFORMANCE_DESCRIPTOR CDROM_EXCEPTION_PERFORMANCE_DESCRIPTOR
struct _CDROM_AUDIO_CONTROL * PCDROM_AUDIO_CONTROL
struct _VOLUME_CONTROL VOLUME_CONTROL
_TRACK_MODE_TYPE
Definition: ntddcdrm.h:378
@ XAForm2
Definition: ntddcdrm.h:380
@ CDDA
Definition: ntddcdrm.h:381
@ RawWithC2AndSubCode
Definition: ntddcdrm.h:382
@ YellowMode2
Definition: ntddcdrm.h:379
@ RawWithSubCode
Definition: ntddcdrm.h:384
@ RawWithC2
Definition: ntddcdrm.h:383
_CDROM_PERFORMANCE_EXCEPTION_TYPE
Definition: ntddcdrm.h:520
@ CdromNominalPerformance
Definition: ntddcdrm.h:521
@ CdromEntirePerformanceList
Definition: ntddcdrm.h:522
@ CdromPerformanceExceptionsOnly
Definition: ntddcdrm.h:523
struct _CDROM_NOMINAL_PERFORMANCE_DESCRIPTOR CDROM_NOMINAL_PERFORMANCE_DESCRIPTOR
#define CDROM_EXCLUSIVE_CALLER_LENGTH
Definition: ntddcdrm.h:402
struct _CDROM_PERFORMANCE_HEADER CDROM_PERFORMANCE_HEADER
struct _VOLUME_CONTROL * PVOLUME_CONTROL
struct _CDROM_EXCLUSIVE_LOCK * PCDROM_EXCLUSIVE_LOCK
struct _CDROM_SET_STREAMING * PCDROM_SET_STREAMING
struct _SUB_Q_CURRENT_POSITION * PSUB_Q_CURRENT_POSITION
struct _CDROM_EXCLUSIVE_LOCK_STATE CDROM_EXCLUSIVE_LOCK_STATE
struct _CDROM_TOC_ATIP_DATA_BLOCK * PCDROM_TOC_ATIP_DATA_BLOCK
#define MAXIMUM_NUMBER_TRACKS
Definition: ntddcdrm.h:131
struct _CDROM_SET_SPEED * PCDROM_SET_SPEED
_EXCLUSIVE_ACCESS_REQUEST_TYPE
Definition: ntddcdrm.h:411
@ ExclusiveAccessQueryState
Definition: ntddcdrm.h:412
@ ExclusiveAccessLockDevice
Definition: ntddcdrm.h:413
@ ExclusiveAccessUnlockDevice
Definition: ntddcdrm.h:414
struct _SUB_Q_TRACK_ISRC * PSUB_Q_TRACK_ISRC
struct _CDROM_PLAY_AUDIO_MSF * PCDROM_PLAY_AUDIO_MSF
struct __RAW_READ_INFO RAW_READ_INFO
struct _CDROM_TOC_PMA_DATA CDROM_TOC_PMA_DATA
enum _STREAMING_CONTROL_REQUEST_TYPE * PSTREAMING_CONTROL_REQUEST_TYPE
struct _CDROM_TOC * PCDROM_TOC
struct _CDROM_EXCLUSIVE_ACCESS * PCDROM_EXCLUSIVE_ACCESS
struct _CDROM_READ_TOC_EX * PCDROM_READ_TOC_EX
struct _CDROM_TOC_ATIP_DATA CDROM_TOC_ATIP_DATA
enum _WRITE_ROTATION WRITE_ROTATION
struct _CDROM_WRITE_SPEED_DESCRIPTOR * PCDROM_WRITE_SPEED_DESCRIPTOR
struct _CDROM_NOMINAL_PERFORMANCE_DESCRIPTOR * PCDROM_NOMINAL_PERFORMANCE_DESCRIPTOR
struct _CDROM_TOC_ATIP_DATA * PCDROM_TOC_ATIP_DATA
struct _CDROM_TOC_CD_TEXT_DATA_BLOCK * PCDROM_TOC_CD_TEXT_DATA_BLOCK
struct _CDROM_TOC_ATIP_DATA_BLOCK CDROM_TOC_ATIP_DATA_BLOCK
struct _CDROM_DISK_DATA * PCDROM_DISK_DATA
struct _CDROM_TOC_CD_TEXT_DATA_BLOCK CDROM_TOC_CD_TEXT_DATA_BLOCK
enum _EXCLUSIVE_ACCESS_REQUEST_TYPE EXCLUSIVE_ACCESS_REQUEST_TYPE
struct _CDROM_PLAY_AUDIO_MSF CDROM_PLAY_AUDIO_MSF
enum _TRACK_MODE_TYPE TRACK_MODE_TYPE
struct _SUB_Q_MEDIA_CATALOG_NUMBER SUB_Q_MEDIA_CATALOG_NUMBER
enum _CDROM_OPC_INFO_TYPE CDROM_OPC_INFO_TYPE
struct _CDROM_PERFORMANCE_REQUEST * PCDROM_PERFORMANCE_REQUEST
struct _CDROM_SIMPLE_OPC_INFO CDROM_SIMPLE_OPC_INFO
_CDROM_PERFORMANCE_TOLERANCE_TYPE
Definition: ntddcdrm.h:527
@ Cdrom10Nominal20Exceptions
Definition: ntddcdrm.h:528
struct _CDROM_STREAMING_CONTROL CDROM_STREAMING_CONTROL
struct _CDROM_WRITE_SPEED_REQUEST * PCDROM_WRITE_SPEED_REQUEST
struct _CDROM_TOC_CD_TEXT_DATA CDROM_TOC_CD_TEXT_DATA
enum _CDROM_PERFORMANCE_TOLERANCE_TYPE * PCDROM_PERFORMANCE_TOLERANCE_TYPE
struct _CDROM_TOC_FULL_TOC_DATA_BLOCK * PCDROM_TOC_FULL_TOC_DATA_BLOCK
struct _CDROM_TOC_FULL_TOC_DATA_BLOCK CDROM_TOC_FULL_TOC_DATA_BLOCK
struct _TRACK_DATA TRACK_DATA
_CDROM_PERFORMANCE_TYPE
Definition: ntddcdrm.h:514
@ CdromReadPerformance
Definition: ntddcdrm.h:515
@ CdromWritePerformance
Definition: ntddcdrm.h:516
_STREAMING_CONTROL_REQUEST_TYPE
Definition: ntddcdrm.h:478
@ CdromStreamingDisable
Definition: ntddcdrm.h:479
@ CdromStreamingEnableForWriteOnly
Definition: ntddcdrm.h:481
@ CdromStreamingEnableForReadOnly
Definition: ntddcdrm.h:480
@ CdromStreamingEnableForReadWrite
Definition: ntddcdrm.h:482
_CDROM_PERFORMANCE_REQUEST_TYPE
Definition: ntddcdrm.h:508
@ CdromPerformanceRequest
Definition: ntddcdrm.h:509
@ CdromWriteSpeedRequest
Definition: ntddcdrm.h:510
struct _CDROM_TOC_CD_TEXT_DATA * PCDROM_TOC_CD_TEXT_DATA
struct _CDROM_WRITE_SPEED_DESCRIPTOR CDROM_WRITE_SPEED_DESCRIPTOR
struct _CDROM_EXCLUSIVE_LOCK CDROM_EXCLUSIVE_LOCK
enum _CDROM_PERFORMANCE_REQUEST_TYPE CDROM_PERFORMANCE_REQUEST_TYPE
struct _CDROM_SEEK_AUDIO_MSF * PCDROM_SEEK_AUDIO_MSF
enum _EXCLUSIVE_ACCESS_REQUEST_TYPE * PEXCLUSIVE_ACCESS_REQUEST_TYPE
enum _CDROM_OPC_INFO_TYPE * PCDROM_OPC_INFO_TYPE
struct _SUB_Q_HEADER * PSUB_Q_HEADER
struct _CDROM_EXCLUSIVE_LOCK_STATE * PCDROM_EXCLUSIVE_LOCK_STATE
struct _CDROM_SET_STREAMING CDROM_SET_STREAMING
struct _CDROM_SIMPLE_OPC_INFO * PCDROM_SIMPLE_OPC_INFO
enum _STREAMING_CONTROL_REQUEST_TYPE STREAMING_CONTROL_REQUEST_TYPE
struct _SUB_Q_CURRENT_POSITION SUB_Q_CURRENT_POSITION
struct _CDROM_DISK_DATA CDROM_DISK_DATA
enum _CDROM_PERFORMANCE_TYPE CDROM_PERFORMANCE_TYPE
struct _CDROM_AUDIO_CONTROL CDROM_AUDIO_CONTROL
enum _CDROM_PERFORMANCE_REQUEST_TYPE * PCDROM_PERFORMANCE_REQUEST_TYPE
struct _CDROM_TOC_FULL_TOC_DATA * PCDROM_TOC_FULL_TOC_DATA
struct _CDROM_TOC_SESSION_DATA CDROM_TOC_SESSION_DATA
struct _SUB_Q_MEDIA_CATALOG_NUMBER * PSUB_Q_MEDIA_CATALOG_NUMBER
enum _CDROM_PERFORMANCE_TOLERANCE_TYPE CDROM_PERFORMANCE_TOLERANCE_TYPE
struct _CDROM_SUB_Q_DATA_FORMAT CDROM_SUB_Q_DATA_FORMAT
enum _CDROM_SPEED_REQUEST CDROM_SPEED_REQUEST
enum _TRACK_MODE_TYPE * PTRACK_MODE_TYPE
struct _CDROM_TOC_FULL_TOC_DATA CDROM_TOC_FULL_TOC_DATA
struct _CDROM_TOC_SESSION_DATA * PCDROM_TOC_SESSION_DATA
_WRITE_ROTATION
Definition: ntddcdrm.h:445
@ CdromCAVRotation
Definition: ntddcdrm.h:447
@ CdromDefaultRotation
Definition: ntddcdrm.h:446
struct _CDROM_READ_TOC_EX CDROM_READ_TOC_EX
struct _CDROM_EXCLUSIVE_ACCESS CDROM_EXCLUSIVE_ACCESS
struct _CDROM_WRITE_SPEED_REQUEST CDROM_WRITE_SPEED_REQUEST
_CDROM_SPEED_REQUEST
Definition: ntddcdrm.h:439
@ CdromSetSpeed
Definition: ntddcdrm.h:440
@ CdromSetStreaming
Definition: ntddcdrm.h:441
enum _CDROM_PERFORMANCE_EXCEPTION_TYPE CDROM_PERFORMANCE_EXCEPTION_TYPE
union _SUB_Q_CHANNEL_DATA * PSUB_Q_CHANNEL_DATA
struct _CDROM_TOC_PMA_DATA * PCDROM_TOC_PMA_DATA
struct _CDROM_TOC CDROM_TOC
struct _TRACK_DATA * PTRACK_DATA
_CDROM_OPC_INFO_TYPE
Definition: ntddcdrm.h:493
@ SimpleOpcInfo
Definition: ntddcdrm.h:494
struct _CDROM_PERFORMANCE_REQUEST CDROM_PERFORMANCE_REQUEST
enum _WRITE_ROTATION * PWRITE_ROTATION
struct _CDROM_SUB_Q_DATA_FORMAT * PCDROM_SUB_Q_DATA_FORMAT
struct _CDROM_SET_SPEED CDROM_SET_SPEED
enum _CDROM_SPEED_REQUEST * PCDROM_SPEED_REQUEST
struct _CDROM_STREAMING_CONTROL * PCDROM_STREAMING_CONTROL
enum _CDROM_PERFORMANCE_EXCEPTION_TYPE * PCDROM_PERFORMANCE_EXCEPTION_TYPE
enum _CDROM_PERFORMANCE_TYPE * PCDROM_PERFORMANCE_TYPE
struct __RAW_READ_INFO * PRAW_READ_INFO
struct _SUB_Q_TRACK_ISRC SUB_Q_TRACK_ISRC
struct _CDROM_EXCEPTION_PERFORMANCE_DESCRIPTOR * PCDROM_EXCEPTION_PERFORMANCE_DESCRIPTOR
struct _CDROM_SEEK_AUDIO_MSF CDROM_SEEK_AUDIO_MSF
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
unsigned short USHORT
Definition: pedump.c:61
USHORT LogicalBlocksPerSecond
Definition: ntddcdrm.h:371
EXCLUSIVE_ACCESS_REQUEST_TYPE RequestType
Definition: ntddcdrm.h:419
UCHAR CallerName[CDROM_EXCLUSIVE_CALLER_LENGTH]
Definition: ntddcdrm.h:432
UCHAR CallerName[CDROM_EXCLUSIVE_CALLER_LENGTH]
Definition: ntddcdrm.h:426
CDROM_EXCLUSIVE_ACCESS Access
Definition: ntddcdrm.h:425
CDROM_PERFORMANCE_TYPE PerformanceType
Definition: ntddcdrm.h:534
CDROM_PERFORMANCE_EXCEPTION_TYPE Exceptions
Definition: ntddcdrm.h:535
CDROM_PERFORMANCE_REQUEST_TYPE RequestType
Definition: ntddcdrm.h:533
CDROM_PERFORMANCE_TOLERANCE_TYPE Tolerance
Definition: ntddcdrm.h:536
WRITE_ROTATION RotationControl
Definition: ntddcdrm.h:455
USHORT WriteSpeed
Definition: ntddcdrm.h:454
CDROM_SPEED_REQUEST RequestType
Definition: ntddcdrm.h:452
USHORT ReadSpeed
Definition: ntddcdrm.h:453
BOOLEAN RestoreDefaults
Definition: ntddcdrm.h:468
WRITE_ROTATION RotationControl
Definition: ntddcdrm.h:467
CDROM_SPEED_REQUEST RequestType
Definition: ntddcdrm.h:460
BOOLEAN RandomAccess
Definition: ntddcdrm.h:470
CDROM_OPC_INFO_TYPE RequestType
Definition: ntddcdrm.h:499
STREAMING_CONTROL_REQUEST_TYPE RequestType
Definition: ntddcdrm.h:486
CDROM_TOC_ATIP_DATA_BLOCK Descriptors[0]
Definition: ntddcdrm.h:242
_ANONYMOUS_UNION union _CDROM_TOC_CD_TEXT_DATA_BLOCK::@3157 DUMMYUNIONNAME
CDROM_TOC_CD_TEXT_DATA_BLOCK Descriptors[0]
Definition: ntddcdrm.h:278
CDROM_TOC_FULL_TOC_DATA_BLOCK Descriptors[0]
Definition: ntddcdrm.h:302
CDROM_TOC_FULL_TOC_DATA_BLOCK Descriptors[0]
Definition: ntddcdrm.h:309
TRACK_DATA TrackData[1]
Definition: ntddcdrm.h:208
TRACK_DATA TrackData[MAXIMUM_NUMBER_TRACKS]
Definition: ntddcdrm.h:199
UCHAR LastTrack
Definition: ntddcdrm.h:198
UCHAR FirstTrack
Definition: ntddcdrm.h:197
CDROM_PERFORMANCE_REQUEST_TYPE RequestType
Definition: ntddcdrm.h:542
UCHAR TrackRelativeAddress[4]
Definition: ntddcdrm.h:354
UCHAR AbsoluteAddress[4]
Definition: ntddcdrm.h:353
SUB_Q_HEADER Header
Definition: ntddcdrm.h:347
UCHAR AudioStatus
Definition: ntddcdrm.h:322
UCHAR DataLength[2]
Definition: ntddcdrm.h:323
UCHAR Reserved
Definition: ntddcdrm.h:321
SUB_Q_HEADER Header
Definition: ntddcdrm.h:336
UCHAR TrackIsrc[15]
Definition: ntddcdrm.h:343
UCHAR Adr
Definition: ntddcdrm.h:138
UCHAR Address[4]
Definition: ntddcdrm.h:141
UCHAR Reserved1
Definition: ntddcdrm.h:140
UCHAR Reserved
Definition: ntddcdrm.h:136
UCHAR TrackNumber
Definition: ntddcdrm.h:139
UCHAR Control
Definition: ntddcdrm.h:137
UCHAR PortVolume[4]
Definition: ntddcdrm.h:375
TRACK_MODE_TYPE TrackMode
Definition: ntddcdrm.h:396
ULONG SectorCount
Definition: ntddcdrm.h:395
LARGE_INTEGER DiskOffset
Definition: ntddcdrm.h:394
uint32_t ULONG
Definition: typedefs.h:59
SUB_Q_MEDIA_CATALOG_NUMBER MediaCatalog
Definition: ntddcdrm.h:359
SUB_Q_TRACK_ISRC TrackIsrc
Definition: ntddcdrm.h:360
SUB_Q_CURRENT_POSITION CurrentPosition
Definition: ntddcdrm.h:358
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
unsigned char UCHAR
Definition: xmlstorage.h:181
__wchar_t WCHAR
Definition: xmlstorage.h:180