22 #ifndef __CDRW_PUBLIC_H__ 23 #define __CDRW_PUBLIC_H__ 25 #define CDRW_SIGNATURE_v1 "ALWA CD-R/W v1" 41 #if defined(CDRW_EXPORTS) || defined(FileSys_EXPORTS) 45 #ifndef FILE_DEVICE_SECURE_OPEN 46 #define FILE_DEVICE_SECURE_OPEN 0x00000100 47 #endif //FILE_DEVICE_SECURE_OPEN 52 #define IRP_MJ_PNP IRP_MJ_PNP_POWER // Obsolete.... 55 #ifndef FILE_DEVICE_CDRW 56 #define FILE_DEVICE_CDRW 0x00000999 59 #define IOCTL_CDROM_MEDIA_REMOVAL CTL_CODE(IOCTL_CDROM_BASE, 0x0201, METHOD_BUFFERED, FILE_READ_ACCESS) 60 #define IOCTL_CDROM_EJECT_MEDIA CTL_CODE(IOCTL_CDROM_BASE, 0x0202, METHOD_BUFFERED, FILE_READ_ACCESS) 61 #define IOCTL_CDROM_LOAD_MEDIA CTL_CODE(IOCTL_CDROM_BASE, 0x0203, METHOD_BUFFERED, FILE_READ_ACCESS) 63 #ifdef CDRW_RESTRICT_ACCESS 65 #define CDRW_CTL_CODE_R(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_READ_DATA) 66 #define CDRW_CTL_CODE_W(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_READ_DATA) 67 #define CDRW_CTL_CODE_W(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_WRITE_DATA ) 68 #define CDRW_CTL_CODE_A(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_READ_DATA | FILE_WRITE_DATA ) 70 #else //CDRW_RESTRICT_ACCESS 72 #define CDRW_CTL_CODE_R(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_READ_DATA) 73 #define CDRW_CTL_CODE_W(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_READ_DATA) 74 #define CDRW_CTL_CODE_A(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_READ_DATA) 75 #define CDRW_CTL_CODE_X(a,b) CTL_CODE(FILE_DEVICE_CDRW, a,b, FILE_ANY_ACCESS ) 77 #endif //CDRW_RESTRICT_ACCESS 79 #define IOCTL_CDRW_LOCK_DOOR CDRW_CTL_CODE_R(0x801, METHOD_BUFFERED) 80 #define IOCTL_CDRW_SET_SPEED CDRW_CTL_CODE_R(0x802, METHOD_BUFFERED) 81 #define IOCTL_CDRW_SYNC_CACHE CDRW_CTL_CODE_W(0x803, METHOD_BUFFERED) 82 #define IOCTL_CDRW_GET_CAPABILITIES CDRW_CTL_CODE_X(0x804, METHOD_BUFFERED) 83 #define IOCTL_CDRW_GET_SPEED IOCTL_CDRW_GET_CAPABILITIES 84 #define IOCTL_CDRW_GET_MEDIA_TYPE CDRW_CTL_CODE_X(0x805, METHOD_BUFFERED) 85 #define IOCTL_CDRW_GET_WRITE_MODE CDRW_CTL_CODE_R(0x806, METHOD_BUFFERED) 86 #define IOCTL_CDRW_SET_WRITE_MODE CDRW_CTL_CODE_W(0x807, METHOD_BUFFERED) 87 #define IOCTL_CDRW_RESERVE_TRACK CDRW_CTL_CODE_W(0x808, METHOD_BUFFERED) 88 #define IOCTL_CDRW_BLANK CDRW_CTL_CODE_R(0x809, METHOD_BUFFERED) 89 #define IOCTL_CDRW_CLOSE_TRK_SES CDRW_CTL_CODE_W(0x80a, METHOD_BUFFERED) 91 #define IOCTL_CDRW_LL_WRITE CDRW_CTL_CODE_R(0x80b, METHOD_BUFFERED) 92 #define IOCTL_CDRW_READ_TRACK_INFO CDRW_CTL_CODE_R(0x80c, METHOD_IN_DIRECT) 93 #define IOCTL_CDRW_READ_DISC_INFO CDRW_CTL_CODE_R(0x80d, METHOD_IN_DIRECT) 94 #define IOCTL_CDRW_BUFFER_CAPACITY CDRW_CTL_CODE_A(0x80e, METHOD_IN_DIRECT) 95 #define IOCTL_CDRW_GET_SIGNATURE CDRW_CTL_CODE_X(0x80f, METHOD_BUFFERED) 96 #define IOCTL_CDRW_RESET_DRIVER CDRW_CTL_CODE_A(0x810, METHOD_BUFFERED) 98 #define IOCTL_CDRW_FORMAT_UNIT CDRW_CTL_CODE_W(0x811, METHOD_BUFFERED) 99 #define IOCTL_CDRW_SET_RANDOM_ACCESS CDRW_CTL_CODE_W(0x812, METHOD_BUFFERED) 101 #define IOCTL_CDRW_TEST_UNIT_READY CDRW_CTL_CODE_X(0x813, METHOD_BUFFERED) 102 #define IOCTL_CDRW_RESET_WRITE_STATUS CDRW_CTL_CODE_X(0x814, METHOD_BUFFERED) 103 #define IOCTL_CDRW_GET_LAST_ERROR CDRW_CTL_CODE_R(0x815, METHOD_BUFFERED) 104 #define IOCTL_CDRW_MODE_SENSE CDRW_CTL_CODE_X(0x816, METHOD_BUFFERED) 105 #define IOCTL_CDRW_MODE_SELECT CDRW_CTL_CODE_R(0x817, METHOD_BUFFERED) 106 #define IOCTL_CDRW_SET_READ_AHEAD CDRW_CTL_CODE_R(0x818, METHOD_BUFFERED) 107 #define IOCTL_CDRW_SET_DEFAULT_SESSION CDRW_CTL_CODE_R(0x819, METHOD_BUFFERED) // RESERVED !!! 108 #define IOCTL_CDRW_NOTIFY_MEDIA_CHANGE CDRW_CTL_CODE_X(0x81a, METHOD_BUFFERED) 109 #define IOCTL_CDRW_SEND_OPC_INFO CDRW_CTL_CODE_W(0x81b, METHOD_BUFFERED) 110 #define IOCTL_CDRW_LL_READ CDRW_CTL_CODE_R(0x81c, METHOD_BUFFERED) 111 #define IOCTL_CDRW_SEND_CUE_SHEET CDRW_CTL_CODE_W(0x81d, METHOD_OUT_DIRECT) 112 #define IOCTL_CDRW_INIT_DEINIT CDRW_CTL_CODE_A(0x81e, METHOD_BUFFERED) 113 #define IOCTL_CDRW_READ_FULL_TOC CDRW_CTL_CODE_R(0x81f, METHOD_BUFFERED) 114 #define IOCTL_CDRW_READ_PMA CDRW_CTL_CODE_R(0x820, METHOD_BUFFERED) 115 #define IOCTL_CDRW_READ_SESSION_INFO CDRW_CTL_CODE_R(0x821, METHOD_BUFFERED) 116 #define IOCTL_CDRW_READ_ATIP CDRW_CTL_CODE_R(0x822, METHOD_BUFFERED) 117 #define IOCTL_CDRW_READ_CD_TEXT CDRW_CTL_CODE_R(0x823, METHOD_BUFFERED) 118 #define IOCTL_CDRW_READ_TOC_EX CDRW_CTL_CODE_R(0x824, METHOD_BUFFERED) 119 #define IOCTL_CDRW_GET_DEVICE_INFO CDRW_CTL_CODE_R(0x825, METHOD_BUFFERED) 120 #define IOCTL_CDRW_GET_EVENT CDRW_CTL_CODE_R(0x826, METHOD_IN_DIRECT) 121 #define IOCTL_CDRW_GET_DEVICE_NAME CDRW_CTL_CODE_R(0x827, METHOD_BUFFERED) 122 #define IOCTL_CDRW_RESET_DRIVER_EX CDRW_CTL_CODE_A(0x828, METHOD_BUFFERED) 123 #define IOCTL_CDRW_GET_MEDIA_TYPE_EX CDRW_CTL_CODE_X(0x829, METHOD_BUFFERED) 124 #ifndef WITHOUT_FORMATTER 125 #define IOCTL_CDRW_GET_MRW_MODE CDRW_CTL_CODE_X(0x82a, METHOD_BUFFERED) 126 #define IOCTL_CDRW_SET_MRW_MODE CDRW_CTL_CODE_X(0x82b, METHOD_BUFFERED) 127 #endif //WITHOUT_FORMATTER 128 #define IOCTL_CDRW_READ_CAPACITY CDRW_CTL_CODE_R(0x82c, METHOD_IN_DIRECT) 129 #define IOCTL_CDRW_GET_DISC_LAYOUT CDRW_CTL_CODE_R(0x82d, METHOD_IN_DIRECT) 130 #define IOCTL_CDRW_SET_STREAMING CDRW_CTL_CODE_W(0x82e, METHOD_BUFFERED) 132 #define IOCTL_CDRW_UNLOAD_DRIVER IOCTL_CDROM_UNLOAD_DRIVER 134 #define IOCTL_CDRW_READ_TOC IOCTL_CDROM_READ_TOC 135 #define IOCTL_CDRW_GET_CONTROL IOCTL_CDROM_GET_CONTROL 136 #define IOCTL_CDRW_PLAY_AUDIO_MSF IOCTL_CDROM_PLAY_AUDIO_MSF 137 #define IOCTL_CDRW_SEEK_AUDIO_MSF IOCTL_CDROM_SEEK_AUDIO_MSF 138 #define IOCTL_CDRW_STOP_AUDIO IOCTL_CDROM_STOP_AUDIO 139 #define IOCTL_CDRW_PAUSE_AUDIO IOCTL_CDROM_PAUSE_AUDIO 140 #define IOCTL_CDRW_RESUME_AUDIO IOCTL_CDROM_RESUME_AUDIO 141 #define IOCTL_CDRW_GET_VOLUME IOCTL_CDROM_GET_VOLUME 142 #define IOCTL_CDRW_SET_VOLUME IOCTL_CDROM_SET_VOLUME 143 #define IOCTL_CDRW_READ_Q_CHANNEL IOCTL_CDROM_READ_Q_CHANNEL 144 #define IOCTL_CDRW_GET_LAST_SESSION IOCTL_CDROM_GET_LAST_SESSION 145 #define IOCTL_CDRW_RAW_READ IOCTL_CDROM_RAW_READ 146 #define IOCTL_CDRW_DISK_TYPE IOCTL_CDROM_DISK_TYPE 148 #define IOCTL_CDRW_CHECK_VERIFY IOCTL_CDROM_CHECK_VERIFY 149 #define IOCTL_CDRW_MEDIA_REMOVAL IOCTL_CDROM_MEDIA_REMOVAL 150 #define IOCTL_CDRW_EJECT_MEDIA IOCTL_CDROM_EJECT_MEDIA 151 #define IOCTL_CDRW_LOAD_MEDIA IOCTL_CDROM_LOAD_MEDIA 152 #define IOCTL_CDRW_RESERVE IOCTL_CDROM_RESERVE 153 #define IOCTL_CDRW_RELEASE IOCTL_CDROM_RELEASE 154 #define IOCTL_CDRW_FIND_NEW_DEVICES IOCTL_CDROM_FIND_NEW_DEVICES 156 #ifndef IOCTL_DVD_READ_STRUCTURE 157 #define IOCTL_DVD_READ_STRUCTURE CTL_CODE(IOCTL_DVD_BASE, 0x0450, METHOD_BUFFERED, FILE_READ_ACCESS) 159 #define IOCTL_DVD_START_SESSION CTL_CODE(IOCTL_DVD_BASE, 0x0400, METHOD_BUFFERED, FILE_READ_ACCESS) 160 #define IOCTL_DVD_READ_KEY CTL_CODE(IOCTL_DVD_BASE, 0x0401, METHOD_BUFFERED, FILE_READ_ACCESS) 161 #define IOCTL_DVD_SEND_KEY CTL_CODE(IOCTL_DVD_BASE, 0x0402, METHOD_BUFFERED, FILE_READ_ACCESS) 162 #define IOCTL_DVD_END_SESSION CTL_CODE(IOCTL_DVD_BASE, 0x0403, METHOD_BUFFERED, FILE_READ_ACCESS) 163 #define IOCTL_DVD_SET_READ_AHEAD CTL_CODE(IOCTL_DVD_BASE, 0x0404, METHOD_BUFFERED, FILE_READ_ACCESS) 164 #define IOCTL_DVD_GET_REGION CTL_CODE(IOCTL_DVD_BASE, 0x0405, METHOD_BUFFERED, FILE_READ_ACCESS) 165 #define IOCTL_DVD_SEND_KEY2 CTL_CODE(IOCTL_DVD_BASE, 0x0406, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) 166 #endif //IOCTL_DVD_READ_STRUCTURE 168 #ifndef IOCTL_DISK_GET_DRIVE_GEOMETRY 169 #define IOCTL_DISK_GET_DRIVE_GEOMETRY CTL_CODE(IOCTL_DISK_BASE, 0x0000, METHOD_BUFFERED, FILE_ANY_ACCESS) 170 #define IOCTL_DISK_VERIFY CTL_CODE(IOCTL_DISK_BASE, 0x0005, METHOD_BUFFERED, FILE_ANY_ACCESS) 171 #define IOCTL_DISK_FORMAT_TRACKS CTL_CODE(IOCTL_DISK_BASE, 0x0006, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) 172 #define IOCTL_DISK_IS_WRITABLE CTL_CODE(IOCTL_DISK_BASE, 0x0009, METHOD_BUFFERED, FILE_ANY_ACCESS) 173 #define IOCTL_DISK_FORMAT_TRACKS_EX CTL_CODE(IOCTL_DISK_BASE, 0x000b, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) 175 #define IOCTL_DISK_CHECK_VERIFY CTL_CODE(IOCTL_DISK_BASE, 0x0200, METHOD_BUFFERED, FILE_READ_ACCESS) 176 #define IOCTL_DISK_MEDIA_REMOVAL CTL_CODE(IOCTL_DISK_BASE, 0x0201, METHOD_BUFFERED, FILE_READ_ACCESS) 177 #define IOCTL_DISK_EJECT_MEDIA CTL_CODE(IOCTL_DISK_BASE, 0x0202, METHOD_BUFFERED, FILE_READ_ACCESS) 178 #define IOCTL_DISK_LOAD_MEDIA CTL_CODE(IOCTL_DISK_BASE, 0x0203, METHOD_BUFFERED, FILE_READ_ACCESS) 179 #define IOCTL_DISK_RESERVE CTL_CODE(IOCTL_DISK_BASE, 0x0204, METHOD_BUFFERED, FILE_READ_ACCESS) 180 #define IOCTL_DISK_RELEASE CTL_CODE(IOCTL_DISK_BASE, 0x0205, METHOD_BUFFERED, FILE_READ_ACCESS) 181 #define IOCTL_DISK_FIND_NEW_DEVICES CTL_CODE(IOCTL_DISK_BASE, 0x0206, METHOD_BUFFERED, FILE_READ_ACCESS) 182 #define IOCTL_DISK_GET_MEDIA_TYPES CTL_CODE(IOCTL_DISK_BASE, 0x0300, METHOD_BUFFERED, FILE_ANY_ACCESS) 183 #endif //IOCTL_DISK_GET_DRIVE_GEOMETRY 185 #ifndef IOCTL_STORAGE_SET_READ_AHEAD 186 #define IOCTL_STORAGE_SET_READ_AHEAD CTL_CODE(IOCTL_STORAGE_BASE, 0x0100, METHOD_BUFFERED, FILE_READ_ACCESS) 187 #endif //IOCTL_STORAGE_SET_READ_AHEAD 189 #ifndef IOCTL_STORAGE_GET_MEDIA_TYPES_EX 190 #define IOCTL_STORAGE_GET_MEDIA_TYPES_EX CTL_CODE(IOCTL_STORAGE_BASE, 0x0301, METHOD_BUFFERED, FILE_ANY_ACCESS) 279 #endif //IOCTL_STORAGE_GET_MEDIA_TYPES_EX 472 #define RESERVE_TRACK_EX_SIZE 0x0 473 #define RESERVE_TRACK_EX_START_LBA 0x1 474 #define RESERVE_TRACK_EX_RMZ 0x2 514 #define FORMAT_UNIT_FORCE_STD_MODE 0x80000000 515 #define FORMAT_UNIT_FORCE_FULL_FMT 0x40000000 516 #define FORMAT_UNIT_RESTART_MRW 0x01000000 626 #define DiscStatus_Formattable 0x01 743 #define CdMediaClass_CDROM 0x00 744 #define CdMediaClass_CDR 0x01 745 #define CdMediaClass_CDRW 0x02 746 #define CdMediaClass_DVDROM 0x03 747 #define CdMediaClass_DVDRAM 0x05 748 #define CdMediaClass_DVDR 0x06 749 #define CdMediaClass_DVDRW 0x07 750 #define CdMediaClass_DVDpR 0x08 751 #define CdMediaClass_DVDpRW 0x09 752 #define CdMediaClass_DDCDROM 0x0a 753 #define CdMediaClass_DDCDR 0x0b 754 #define CdMediaClass_DDCDRW 0x0c 755 #define CdMediaClass_BDROM 0x0d 756 #define CdMediaClass_BDRE 0x0e 757 #define CdMediaClass_BDR 0x0f 758 #define CdMediaClass_HD_DVDROM 0x10 759 #define CdMediaClass_HD_DVDRAM 0x11 760 #define CdMediaClass_HD_DVDR 0x12 761 #define CdMediaClass_HD_DVDRW 0x13 762 #define CdMediaClass_NoDiscPresent 0x70 763 #define CdMediaClass_DoorOpen 0x71 764 #define CdMediaClass_Unknown 0xff 766 #define CdMediaClass_Max CdMediaClass_HD_DVDRW 768 #define CdMediaSize_Unknown 0 769 #define CdMediaSize_120mm 1 770 #define CdMediaSize_80mm 2 772 #define CdDataType_Unknown 0 773 #define CdDataType_DataOnly 1 774 #define CdDataType_AudioOnly 2 //CDDA 775 #define CdDataType_DataAudioCombined 3 776 #define CdDataType_Hybrid 4 777 #define CdDataType_DataOnlyMRW 5 779 #define CdMediaClassEx_CD 0x00 780 #define CdMediaClassEx_DVD 0x01 781 #define CdMediaClassEx_DDCD 0x02 782 #define CdMediaClassEx_BD 0x03 783 #define CdMediaClassEx_HD_DVD 0x04 784 #define CdMediaClassEx_None 0x70 785 #define CdMediaClassEx_Unknown 0xff 787 #define CdDataClassEx_ROM 0x00 788 #define CdDataClassEx_R 0x01 789 #define CdDataClassEx_RW 0x02 790 #define CdDataClassEx_Unknown 0xff 792 #define CdCapFlags_Writable 0x01 793 #define CdCapFlags_Erasable 0x02 794 #define CdCapFlags_Formatable 0x04 795 #define CdCapFlags_WriteParamsReq 0x08 796 #define CdCapFlags_RandomWritable 0x10 797 #define CdCapFlags_Cav 0x20 799 #define CdrwMediaClassEx_IsRAM(MediaClassEx) ( \ 800 ((MediaClassEx) == CdMediaClass_DVDRAM) || \ 801 ((MediaClassEx) == CdMediaClass_BDRE) || \ 802 ((MediaClassEx) == CdMediaClass_HD_DVDRAM) ) 804 #define CdrwIsDvdOverwritable(MediaClassEx) \ 805 ((MediaClassEx) == CdMediaClass_DVDRW || \ 806 (MediaClassEx) == CdMediaClass_DVDpRW || \ 807 (MediaClassEx) == CdMediaClass_DVDRAM || \ 808 (MediaClassEx) == CdMediaClass_BDRE || \ 809 (MediaClassEx) == CdMediaClass_HD_DVDRW || \ 810 (MediaClassEx) == CdMediaClass_HD_DVDRAM \ 970 struct _SubHdrParams1 {
1018 #ifndef WITHOUT_FORMATTER 1026 #endif //WITHOUT_FORMATTER 1235 #define LunWPerf_RotCtrl_Mask 0x07 1236 #define LunWPerf_RotCtrl_CLV 0x00 1237 #define LunWPerf_RotCtrl_CAV 0x01 1260 #define ReadCd_BlkType_Mask 0x1c 1261 #define ReadCd_BlkType_Any (0x00<<2) 1262 #define ReadCd_BlkType_CDDA (0x01<<2) 1263 #define ReadCd_BlkType_M1 (0x02<<2) 1264 #define ReadCd_BlkType_M2FX (0x03<<2) 1265 #define ReadCd_BlkType_M2F1 (0x04<<2) 1266 #define ReadCd_BlkType_M2F2 (0x05<<2) 1273 #define ReadCd_Error_Mask 0x0006 1274 #define ReadCd_Error_None 0x0000 1275 #define ReadCd_Error_C2 0x0002 1276 #define ReadCd_Error_C2ex 0x0004 1277 #define ReadCd_Include_EDC 0x0008 1278 #define ReadCd_Include_UsrData 0x0010 1279 #define ReadCd_Header_Mask 0x0060 1280 #define ReadCd_Header_None 0x0000 1281 #define ReadCd_Header_Hdr 0x0020 1282 #define ReadCd_Header_SubHdr 0x0040 1283 #define ReadCd_Header_AllHdr 0x0060 1284 #define ReadCd_Include_SyncData 0x0080 1285 #define ReadCd_SubChan_Mask 0x0700 1286 #define ReadCd_SubChan_None 0x0000 1287 #define ReadCd_SubChan_Raw 0x0100 1288 #define ReadCd_SubChan_Q 0x0200 1289 #define ReadCd_SubChan_PW 0x0400 1290 #define ReadCd_SubChan_All ReadCd_SubChan_Mask 1346 #define AudioStatus_NotSupported 0x00 1347 #define AudioStatus_InProgress 0x11 1348 #define AudioStatus_Paused 0x12 1349 #define AudioStatus_PlayComplete 0x13 1350 #define AudioStatus_PlayError 0x14 1351 #define AudioStatus_NoStatus 0x15 1353 #define IOCTL_CDROM_SUB_Q_CHANNEL 0x00 1354 #define IOCTL_CDROM_CURRENT_POSITION 0x01 1355 #define IOCTL_CDROM_MEDIA_CATALOG 0x02 1356 #define IOCTL_CDROM_TRACK_ISRC 0x03 1428 #define DefSession_LastAvailable 0xff 1472 #define CDRW_DEV_CAPABILITY_TAG 0xCA10AB11 1474 #define WMODE_SUPPORTED 0x01 1475 #define WMODE_SUPPORTED_FP 0x02 1476 #define WMODE_SUPPORTED_VP 0x04 1477 #define WMODE_NOT_SUPPORTED 0xff 1478 #define WMODE_NOT_TESTED 0x00 1480 #define CDRW_FEATURE_OPC 0x00000001 // use OPC regardless of OPCn in DISK_INFO 1481 #define CDRW_FEATURE_EVENT 0x00000002 1482 #define CDRW_FEATURE_GET_CFG 0x00000004 1483 #define CDRW_FEATURE_NO_LOCK_REP 0x00000008 // device doesn't report tray lock state 1484 #define CDRW_FEATURE_SYNC_ON_WRITE 0x00000010 // device preferes Sync Cache after each Write 1485 #define CDRW_FEATURE_BAD_RW_SEEK 0x00000020 // seek error occures with status Illegal Sector Mode For This Track 1489 #define CDRW_FEATURE_FP_ADDRESSING_PROBLEM 0x00000040 1490 #define CDRW_FEATURE_MRW_ADDRESSING_PROBLEM 0x00000080 1491 #define CDRW_FEATURE_FORCE_SYNC_ON_WRITE 0x00000100 // device requires Sync Cache after each Write 1492 #define CDRW_FEATURE_BAD_DVD_LAST_LBA 0x00000200 // device cannot determile LastLba on not closed DVD disks 1493 #define CDRW_FEATURE_FULL_BLANK_ON_FORMAT 0x00000400 // device cannot format disk until it is full-blanked 1494 #define CDRW_FEATURE_STREAMING 0x00000800 // device supports streaming read/write 1495 #define CDRW_FEATURE_FORCE_SYNC_BEFORE_READ 0x00001000 // device requires Sync Cache on Write -> Read state transition 1496 #define CDRW_FEATURE_CHANGER 0x80000000 1498 #define DEV_CAP_GET_PROFILE(arr, pf) \ 1499 (((pf) > PFNUM_Max) ? 0 : (((arr)[(pf)/32] >> (pf)%32) & 1)) 1501 #define CDRW_DEV_CAPABILITY_CDROM ((ULONG)1 << CdMediaClass_CDROM ) 1502 #define CDRW_DEV_CAPABILITY_CDR ((ULONG)1 << CdMediaClass_CDR ) 1503 #define CDRW_DEV_CAPABILITY_CDRW ((ULONG)1 << CdMediaClass_CDRW ) 1504 #define CDRW_DEV_CAPABILITY_DVDROM ((ULONG)1 << CdMediaClass_DVDROM ) 1505 #define CDRW_DEV_CAPABILITY_DVDRAM ((ULONG)1 << CdMediaClass_DVDRAM ) 1506 #define CDRW_DEV_CAPABILITY_DVDR ((ULONG)1 << CdMediaClass_DVDR ) 1507 #define CDRW_DEV_CAPABILITY_DVDRW ((ULONG)1 << CdMediaClass_DVDRW ) 1508 #define CDRW_DEV_CAPABILITY_DVDpR ((ULONG)1 << CdMediaClass_DVDpR ) 1509 #define CDRW_DEV_CAPABILITY_DVDpRW ((ULONG)1 << CdMediaClass_DVDpRW ) 1510 #define CDRW_DEV_CAPABILITY_DDCDROM ((ULONG)1 << CdMediaClass_DDCDROM) 1511 #define CDRW_DEV_CAPABILITY_DDCDR ((ULONG)1 << CdMediaClass_DDCDR ) 1512 #define CDRW_DEV_CAPABILITY_DDCDRW ((ULONG)1 << CdMediaClass_DDCDRW ) 1593 #define DVD_CHALLENGE_KEY_LENGTH (12 + sizeof(DVD_COPY_PROTECT_KEY)) 1594 #define DVD_BUS_KEY_LENGTH (8 + sizeof(DVD_COPY_PROTECT_KEY)) 1595 #define DVD_TITLE_KEY_LENGTH (8 + sizeof(DVD_COPY_PROTECT_KEY)) 1596 #define DVD_DISK_KEY_LENGTH (2048 + sizeof(DVD_COPY_PROTECT_KEY)) 1597 #define DVD_RPC_KEY_LENGTH (sizeof(DVD_RPC_KEY) + sizeof(DVD_COPY_PROTECT_KEY)) 1598 #define DVD_SET_RPC_KEY_LENGTH (sizeof(DVD_SET_RPC_KEY) + sizeof(DVD_COPY_PROTECT_KEY)) 1599 #define DVD_ASF_LENGTH (sizeof(DVD_ASF) + sizeof(DVD_COPY_PROTECT_KEY)) 1637 #define TrackMap_AllowCopyBit_variated 0x01 1638 #define TrackMap_CopyBit_variated 0x02 1639 #define TrackMap_Try_variation 0x04 1640 #define TrackMap_Use_variation 0x08 1641 #define TrackMap_FixFPAddressing 0x10 1642 #define TrackMap_FixMRWAddressing 0x20 1681 #define DiskLayout_FLAGS_TRACKMAP (0x00002000) 1682 #define DiskLayout_FLAGS_RAW_DISK (0x00040000) 1690 #define CDRW_ERR_NO_ERROR 0x0000 1691 #define CDRW_ERR_WRITE_IN_PROGRESS_BUSY 0x0001 1692 #define CDRW_ERR_FORMAT_IN_PROGRESS_BUSY 0x0002 1693 #define CDRW_ERR_CLOSE_IN_PROGRESS_BUSY 0x0003 1694 #define CDRW_ERR_BAD_ADDR_ALIGNMENT 0x0004 1695 #define CDRW_ERR_BAD_SIZE_ALIGNMENT 0x0005 1696 #define CDRW_ERR_STREAM_LOSS 0x0006 1697 #define CDRW_ERR_TEST_WRITE_UNSUPPORTED 0x0007 1698 #define CDRW_ERR_UNHANDLED_WRITE_TYPE 0x0008 1699 #define CDRW_ERR_CANT_ALLOC_TMP_BUFFER 0x0009 1700 #define CDRW_ERR_BUFFER_IS_FULL 0x000a 1701 #define CDRW_ERR_VERIFY_REQUIRED 0x000b 1702 #define CDRW_ERR_PLAY_IN_PROGRESS_BUSY 0x000c 1703 #define CDRW_ERR_TOO_LONG_BLOCK_TO_TRANSFER 0x000d 1704 #define CDRW_ERR_INWALID_WRITE_PARAMETERS 0x000e // use SET_WRITE_PARAMS properly 1705 #define CDRW_ERR_INVALID_IO_BUFFER_ADDRESS 0x000f 1706 #define CDRW_ERR_INVALID_INPUT_BUFFER_SIZE 0x0010 1707 #define CDRW_ERR_INVALID_OUTPUT_BUFFER_SIZE 0x0011 1708 #define CDRW_ERR_UNRECOGNIZED_MEDIA 0x0012 1709 #define CDRW_ERR_MEDIA_WRITE_PROTECTED 0x0013 1710 #define CDRW_ERR_NO_MEDIA 0x0014 1711 #define CDRW_ERR_TRAY_OPEN 0x0015 1712 #define CDRW_ERR_MEDIA_NOT_APPENDABLE 0x0016 1713 #define CDRW_ERR_INVALID_LBA 0x0017 1714 #define CDRW_ERR_INVALID_FIXED_PACKET_SIZE 0x0018 1715 #define CDRW_ERR_INVALID_WRITE_TYPE_FOR_MEDIA 0x0019 1716 #define CDRW_ERR_CUE_SHEET_REQUIRED 0x001a // you sould send cue sheet before SAO 1717 #define CDRW_ERR_CANT_DEINIT_IN_CLASS_MODE 0x001b // there is no underlayered driver 1718 #define CDRW_ERR_INVALID_FORMAT_UNIT_SETTINGS 0x001c // use SET_WRITE_PARAMS properly before 1720 #define CDRW_ERR_UNHANDLED_FORMAT_UNIT_MODE 0x001d // this mode is not supported by 1722 #define CDRW_ERR_CANT_READ_BUFFER_CAPACITY 0x001e 1723 #define CDRW_ERR_DEVICE_WRITE_ERROR 0x001f 1724 #define CDRW_ERR_UNHANDLED_IOCTL 0x0020 1725 #define CDRW_ERR_UNHANDLED_FORMAT_WORKAROUND_MODE 0x0021 // check your Registry settings 1726 #define CDRW_ERR_DOOR_LOCKED_BUSY 0x0022 1727 #define CDRW_ERR_MAGIC_WORD_REQUIRED 0x0023 1728 #define CDRW_ERR_INVALID_SECTOR_MODE 0x0024 1729 #define CDRW_ERR_DVD_LICENSE_VIOLATION 0x0025 1730 #define CDRW_ERR_INVALID_DVD_KEY_TYPE 0x0026 1731 #define CDRW_ERR_INVALID_DVD_REGION_CODE 0x0027 1732 #define CDRW_ERR_PAGE_IS_NOT_SUPPORTED 0x0028 1733 #define CDRW_ERR_STD_FORMAT_REQUIRED 0x0029 1742 #define REG_TIMEOUT_NAME_USER ("TimeOutValue") 1743 #define REG_AUTORUN_NAME_USER ("Autorun") 1744 #define REG_LOADMODE_NAME_USER ("LoadMode") 1746 #define LOADMODE_CDRW_ONLY 0 1747 #define LOADMODE_ALWAYS 1 1748 #define LOADMODE_NEVER 2 1750 #define REG_PACKETSIZE_NAME_USER ("PacketSize") // Initial packet size (FP) 1752 #define PACKETSIZE_STREAM 0 1753 #define PACKETSIZE_UDF 32 1755 #ifndef WITHOUT_FORMATTER 1756 #define REG_FORMATUNIT_NAME_USER ("FormatUnitMode") // FORMAT_UNIT workaround mode 1758 #define FORMATUNIT_FP 0 // simulation via FP 1759 #define FORMATUNIT_STD 1 1760 #endif //WITHOUT_FORMATTER 1762 #define REG_R_SPLIT_SIZE_NAME_USER ("ReadSplitSize") // Read request spliting limit 1763 #define REG_W_SPLIT_SIZE_NAME_USER ("WriteSplitSize") // Write request spliting limit 1765 #define REG_CDR_SIMULATION_NAME_USER ("CdRSimulationMode") // Influence on READ_DISC_INFO 1767 #define CDR_SIMULATION_CDROM 0 1768 #define CDR_SIMULATION_ALWAYS 1 1769 #define CDR_SIMULATION_NEVER 2 1771 #define REG_SPEEDMODE_NAME_USER ("SpeedDetectionMode") 1773 #define SPEEDMODE_ASSUME_OK 0 1774 #define SPEEDMODE_REREAD 1 1781 #define REG_WMODE_SIMULATION_NAME_USER ("WModeSimulation") // via Raw 1782 #define WMODE_SIMULATION_ON 1 1783 #define WMODE_SIMULATION_OFF 0 1784 #define WMODE_ASSUME_OK 2 1786 #define REG_SYNC_PACKETS_NAME_USER ("SyncPacketsMode") 1787 #define SYNC_PACKETS_ALWAYS 0 1788 #define SYNC_PACKETS_RESET_DRV 1 1789 #define SYNC_PACKETS_NEVER 2 1790 #define SYNC_PACKETS_FP 3 1791 #define SYNC_PACKETS_DISABLED 4 1792 #define SYNC_PACKETS_VP_ONLY 5 1793 #define SYNC_PACKETS_BY_W_THROUGH 6 1795 #define REG_ASSURE_READY_NAME_USER ("AssureReadiness") 1796 #define ASSURE_READY_TEST_UNIT 0 1797 #define ASSURE_READY_DELAY_100 1 1798 #define ASSURE_READY_NONE 2 1800 #define REG_WAIT_PACKETS_NAME_USER ("WaitPackets") 1801 #define WAIT_PACKETS_ALWAYS 0 1802 #define WAIT_PACKETS_STREAM 1 1804 #define REG_BAD_RW_SEEK_NAME_USER ("BadRWSeek") 1806 #define REG_ALLOW_PACKET_ON_CDR_NAME_USER ("AllowPacketOnCdR") 1807 #define ALLOW_PACKET_ON_CDR_OFF 0 1808 #define ALLOW_PACKET_ON_CDR_ON 1 1810 #define REG_MAX_READY_RETRY_NAME_USER ("MaxReadyRetry") 1812 #define REG_BAD_DVD_READ_TRACK_INFO_NAME_USER ("DvdBadReadTrackInfo") 1813 #define REG_BAD_DVD_READ_DISC_INFO_NAME_USER ("DvdBadReadDiscInfo") 1814 #define REG_BAD_DVD_READ_CAPACITY_NAME_USER ("DvdBadReadCapacity") 1815 #define REG_BAD_DVD_LAST_LBA_NAME_USER ("DvdBadLastLba") 1816 #define REG_BAD_DVD_LAST_LBA_NAME_USER ("DvdBadLastLba") 1818 #define REG_FULL_BLANK_ON_FORMAT_NAME_USER ("FullEraseBeforeFormat") 1820 #define DEFAULT_LAST_LBA_FP_CD 276159 1821 #define DEFAULT_LAST_LBA_DVD 0x23053f 1822 #define DEFAULT_LAST_LBA_BD (25*1000*1000/2-1) 1827 #endif //__CDRW_PUBLIC_H__ struct _DVD_READ_KEY_USER_IN DVD_READ_KEY_USER_IN
struct _CLOSE_TRK_SES_USER_IN CLOSE_TRK_SES_USER_IN
PMODE_MRW_PAGE PSET_MRW_MODE_USER_IN
PREAD_TOC_SES PGET_LAST_SESSION_USER_OUT
struct _MediaTrackMap MediaTrackMap
struct _GET_CAPABILITIES_USER_OUT * PGET_CAPABILITIES_USER_OUT
EVENT_STAT_PM_BLOCK PowerManagement
struct _DISK_VERIFY_USER_IN DISK_VERIFY_USER_IN
struct _SET_CD_SPEED_USER_IN SET_CD_SPEED_USER_IN
struct _SET_STREAMING_USER_IN * PSET_STREAMING_USER_IN
struct _DVD_READ_STRUCTURE_USER_IN * PDVD_READ_STRUCTURE_USER_IN
USHORT LogicalBlocksPerSecond
struct _GET_CAPABILITIES_3_USER_OUT * PGET_CAPABILITIES_3_USER_OUT
union _DVD_READ_KEY_USER_IN::@935 Parameters
union _CLOSE_TRK_SES_USER_IN::@912 Byte2
struct _CDRW_RESET_DRIVER_USER_IN * PCDRW_RESET_DRIVER_USER_IN
struct _AUDIO_CONTROL_USER_OUT * PAUDIO_CONTROL_USER_OUT
DISK_GEOMETRY GET_DRIVE_GEOMETRY_USER_OUT
struct _LL_WRITE_USER_IN * PLL_WRITE_USER_IN
struct _MODE_SENSE_USER_IN * PMODE_SENSE_USER_IN
struct _DVD_READ_STRUCTURE_USER_OUT * PDVD_READ_STRUCTURE_USER_OUT
struct _AUDIO_CONTROL_USER_OUT AUDIO_CONTROL_USER_OUT
union _TRACK_INFO_BLOCK_USER_OUT::@899 TrackParam
UCHAR FirstTrackNumLastSes2
USHORT NumberVolumeLevels
UCHAR LastTrackNumLastSes
struct _LL_READ_USER_IN LL_READ_USER_IN
struct _SET_RANDOM_ACCESS_USER_IN * PSET_RANDOM_ACCESS_USER_IN
struct _SET_STREAMING_USER_IN::@895::@896 Fields
union _CLOSE_TRK_SES_USER_IN::@911 Byte1
struct _CDROM_DISK_DATA_USER_OUT * PCDROM_DISK_DATA_USER_OUT
struct _BLANK_MEDIA_USER_IN BLANK_MEDIA_USER_IN
struct _NOTIFY_MEDIA_CHANGE_USER_IN NOTIFY_MEDIA_CHANGE_USER_IN
struct _SEEK_AUDIO_MSF_USER_IN SEEK_AUDIO_MSF_USER_IN
struct _DISC_INFO_BLOCK_USER_OUT::@915::@917 Fields
union _MODE_WRITE_PARAMS_PAGE_USER::@922 Byte3
READ_TOC_TOC READ_TOC_USER_OUT
EVENT_STAT_DEV_BUSY_BLOCK DeviceBusy
struct _LUN_WRITE_PERF_DESC_USER LUN_WRITE_PERF_DESC_USER
LARGE_INTEGER MediaChangeTime
USHORT CopyManagementRevision
struct _DVD_READ_STRUCTURE_USER_OUT DVD_READ_STRUCTURE_USER_OUT
EVENT_STAT_OPERATIONAL_BLOCK Operational
USHORT MaximumWriteSpeedSupported
READ_TOC_SES READ_SESSION_INFO_USER_OUT
struct _SET_CD_SPEED_EX_USER_IN * PSET_CD_SPEED_EX_USER_IN
EVENT_STAT_MEDIA_BLOCK MediaChange
PREAD_TOC_FULL_TOC PREAD_FULL_TOC_USER_OUT
UCHAR FirstTrackNumLastSes
struct _SEND_OPC_INFO_USER_IN SEND_OPC_INFO_USER_IN
PREAD_TOC_FULL_TOC PREAD_PMA_USER_OUT
struct _MODE_SENSE_USER_OUT * PMODE_SENSE_USER_OUT
struct _RESERVE_TRACK_USER_IN RESERVE_TRACK_USER_IN
struct _SYNC_CACHE_USER_IN::@897::@898 Fields
struct _GET_SIGNATURE_USER_OUT * PGET_SIGNATURE_USER_OUT
struct _LL_READ_USER_IN * PLL_READ_USER_IN
struct _TRACK_INFO_BLOCK_USER_OUT TRACK_INFO_BLOCK_USER_OUT
PINIT_DEINIT_USER_IN PINIT_DEINIT_USER_OUT
TRACK_MODE_TYPE TrackMode
UCHAR AdditionalSenseCode
struct _PREVENT_MEDIA_REMOVAL_USER_IN * PPREVENT_MEDIA_REMOVAL_USER_IN
struct _GET_MEDIA_TYPE_EX_USER_OUT * PGET_MEDIA_TYPE_EX_USER_OUT
struct _READ_TOC_EX_USER_IN READ_TOC_EX_USER_IN
struct _PLAY_AUDIO_MSF_USER_IN * PPLAY_AUDIO_MSF_USER_IN
struct _MODE_SENSE_USER_OUT MODE_SENSE_USER_OUT
struct _TEST_UNIT_READY_USER_OUT * PTEST_UNIT_READY_USER_OUT
union _GET_EVENT_USER_OUT * PGET_EVENT_USER_OUT
enum _STORAGE_MEDIA_TYPE STORAGE_MEDIA_TYPE
USHORT MaximumSpeedSupported
struct _SET_CD_SPEED_EX_USER_IN SET_CD_SPEED_EX_USER_IN
struct _TEST_UNIT_READY_USER_IN * PTEST_UNIT_READY_USER_IN
union _TRACK_INFO_BLOCK_USER_OUT::@900 DataParam
UCHAR LastSesLeadOutMSF[4]
ULONG LastTrackNumLastSes
USHORT CurrentWriteSpeed3
struct _GET_DISK_LAYOUT_USER_OUT GET_DISK_LAYOUT_USER_OUT
union _MODE_WRITE_PARAMS_PAGE_USER::@925::@930 Params
USHORT MaximumSpeedSupported
struct _MediaTrackMap * PMediaTrackMap
struct _SEEK_AUDIO_MSF_USER_IN * PSEEK_AUDIO_MSF_USER_IN
struct _MODE_WRITE_PARAMS_PAGE_USER * PMODE_WRITE_PARAMS_PAGE_USER
USHORT LunWPerfDescriptorCount
PREAD_TOC_TOC PREAD_TOC_USER_OUT
PDVD_READ_KEY_USER_IN PDVD_READ_KEY_USER_OUT
struct _FORMAT_CDRW_PARAMETERS_USER_IN * PFORMAT_CDRW_PARAMETERS_USER_IN
ULONG FirstTrackNumLastSes
struct _MODE_WRITE_PARAMS_PAGE_USER MODE_WRITE_PARAMS_PAGE_USER
struct _NOTIFY_MEDIA_CHANGE_USER_IN * PNOTIFY_MEDIA_CHANGE_USER_IN
struct _LL_WRITE_USER_IN LL_WRITE_USER_IN
UCHAR AdditionalSenseCodeQualifier
struct _DISC_STATUS_INFO_USER_OUT DISC_STATUS_INFO_USER_OUT
ULONG MaximumPhysicalPages
struct _CDROM_DISK_DATA_USER_OUT CDROM_DISK_DATA_USER_OUT
enum _TRACK_MODE_TYPE TRACK_MODE_TYPE
struct _MODE_SELECT_USER_IN MODE_SELECT_USER_IN
READ_TOC_CD_TEXT READ_CD_TEXT_USER_OUT
struct _BUFFER_CAPACITY_BLOCK_USER_OUT * PBUFFER_CAPACITY_BLOCK_USER_OUT
struct _DISC_INFO_BLOCK_USER_OUT DISC_INFO_BLOCK_USER_OUT
struct _RESERVE_TRACK_EX_USER_IN * PRESERVE_TRACK_EX_USER_IN
struct _TEST_UNIT_READY_USER_IN TEST_UNIT_READY_USER_IN
struct _MODE_WRITE_PARAMS_PAGE_USER::@925 SubHeader
_Reserved_ PVOID Reserved
struct _SEND_OPC_INFO_HEADER_USER_IN * PSEND_OPC_INFO_HEADER_USER_IN
struct _GET_MEDIA_TYPE_EX_USER_OUT GET_MEDIA_TYPE_EX_USER_OUT
struct _INIT_DEINIT_USER_IN * PINIT_DEINIT_USER_IN
struct _LL_READ_USER_IN::@933::@934 Fields
struct _SEND_OPC_INFO_USER_IN * PSEND_OPC_INFO_USER_IN
struct _DVD_START_SESSION_USER_OUT DVD_START_SESSION_USER_OUT
struct _DVD_READ_STRUCTURE_USER_IN DVD_READ_STRUCTURE_USER_IN
MODE_PARAMETER_HEADER Header
PREAD_TOC_SES PREAD_SESSION_INFO_USER_OUT
struct _INIT_DEINIT_USER_IN INIT_DEINIT_USER_IN
READ_TOC_SES GET_LAST_SESSION_USER_OUT
struct _SUB_Q_CHANNEL_DATA_USER_IN SUB_Q_CHANNEL_DATA_USER_IN
struct _TRACK_INFO_BLOCK_USER_OUT::@899::@901 Fields
struct _TEST_UNIT_READY_USER_OUT TEST_UNIT_READY_USER_OUT
struct _GET_EVENT_USER_IN * PGET_EVENT_USER_IN
struct _GET_MEDIA_TYPE_USER_OUT GET_MEDIA_TYPE_USER_OUT
struct _RAW_READ_USER_IN RAW_READ_USER_IN
struct _DVD_READ_KEY_USER_IN * PDVD_READ_KEY_USER_IN
READ_TOC_FULL_TOC READ_FULL_TOC_USER_OUT
UCHAR AdditionalSenseCodeQualifier
MODE_WRITE_PARAMS_PAGE_USER GET_WRITE_MODE_USER_OUT
struct _PLAY_AUDIO_MSF_USER_IN PLAY_AUDIO_MSF_USER_IN
UCHAR AdditionalSenseCode
struct _SEND_OPC_INFO_HEADER_USER_IN SEND_OPC_INFO_HEADER_USER_IN
struct _DVD_START_SESSION_USER_OUT * PDVD_START_SESSION_USER_OUT
struct _READ_SESSION_INFO_USER_IN * PREAD_SESSION_INFO_USER_IN
struct _TRACK_INFO_BLOCK_USER_IN TRACK_INFO_BLOCK_USER_IN
LARGE_INTEGER TitleOffset
DVD_READ_KEY_USER_IN DVD_READ_KEY_USER_OUT
struct _GET_DISK_LAYOUT_USER_OUT * PGET_DISK_LAYOUT_USER_OUT
struct _GET_EVENT_USER_IN GET_EVENT_USER_IN
struct _SET_READ_AHEAD_USER_IN * PSET_READ_AHEAD_USER_IN
struct _SET_RANDOM_ACCESS_USER_IN SET_RANDOM_ACCESS_USER_IN
DISC_STATUS_INFO_USER_OUT Status
struct _GET_LAST_ERROR_USER_OUT GET_LAST_ERROR_USER_OUT
UCHAR SimulatedWModes[4][16]
struct _GET_MEDIA_TYPE_USER_OUT * PGET_MEDIA_TYPE_USER_OUT
READ_TOC_FULL_TOC READ_PMA_USER_OUT
MODE_MRW_PAGE SET_MRW_MODE_USER_IN
READ_TOC_SES READ_TOC_EX_USER_OUT
USHORT MaximumWriteSpeedSupported
ULONG CHECK_VERIFY_USER_OUT
struct _MediaTrackMap * TrackMap
PMODE_WRITE_PARAMS_PAGE_USER PSET_WRITE_MODE_USER_IN
struct _SYNC_CACHE_USER_IN SYNC_CACHE_USER_IN
struct _SET_STREAMING_USER_IN SET_STREAMING_USER_IN
EVENT_STAT_EXT_REQ_BLOCK ExternalReq
union _SET_STREAMING_USER_IN::@895 Options
UCHAR SubChannelSelection
struct _SYNC_CACHE_USER_IN * PSYNC_CACHE_USER_IN
READ_CAPACITY_DATA READ_CAPACITY_USER_OUT
MODE_WRITE_PARAMS_PAGE_USER SET_WRITE_MODE_USER_IN
struct _CLOSE_TRK_SES_USER_IN * PCLOSE_TRK_SES_USER_IN
PREAD_TOC_SES PREAD_TOC_EX_USER_OUT
ULONG MaximumTransferLength
union _GET_EVENT_USER_OUT GET_EVENT_USER_OUT
INIT_DEINIT_USER_IN INIT_DEINIT_USER_OUT
struct _GET_SIGNATURE_USER_OUT GET_SIGNATURE_USER_OUT
ULONG ActualMaximumTransferLength
struct _READ_SESSION_INFO_USER_IN READ_SESSION_INFO_USER_IN
struct _GET_DEVICE_INFO_OLD_USER_OUT * PGET_DEVICE_INFO_OLD_USER_OUT
struct _SUB_Q_CHANNEL_DATA_USER_IN * PSUB_Q_CHANNEL_DATA_USER_IN
struct _LUN_WRITE_PERF_DESC_USER * PLUN_WRITE_PERF_DESC_USER
LARGE_INTEGER MediaChangeTime
PMODE_WRITE_PARAMS_PAGE_USER PGET_WRITE_MODE_USER_OUT
struct _GET_LAST_ERROR_USER_OUT * PGET_LAST_ERROR_USER_OUT
USHORT CopyManagementRevision
struct _RESERVE_TRACK_USER_IN * PRESERVE_TRACK_USER_IN
PDISK_GEOMETRY PGET_DRIVE_GEOMETRY_USER_OUT
struct _BLANK_MEDIA_USER_IN * PBLANK_MEDIA_USER_IN
MODE_MRW_PAGE GET_MRW_MODE_USER_OUT
union _MODE_WRITE_PARAMS_PAGE_USER::@924 Byte7
struct _GET_DEVICE_INFO_USER_OUT * PGET_DEVICE_INFO_USER_OUT
UCHAR LastTrackNumLastSes2
struct _SET_READ_AHEAD_USER_IN SET_READ_AHEAD_USER_IN
struct _MODE_SENSE_USER_IN MODE_SENSE_USER_IN
union _MODE_WRITE_PARAMS_PAGE_USER::@923 Byte4
struct _MODE_SELECT_USER_IN * PMODE_SELECT_USER_IN
struct _READ_TOC_EX_USER_IN * PREAD_TOC_EX_USER_IN
union _MODE_WRITE_PARAMS_PAGE_USER::@921 Byte2
union _SYNC_CACHE_USER_IN::@897 Byte1
struct _RAW_READ_USER_IN * PRAW_READ_USER_IN
ULONG * PCHECK_VERIFY_USER_OUT
struct _SET_DEFAULT_SESSION_USER_IN * PSET_DEFAULT_SESSION_USER_IN
struct _GET_DEVICE_INFO_USER_OUT GET_DEVICE_INFO_USER_OUT
LARGE_INTEGER BlockByteOffset
UCHAR AdditionalSenseCode
PREAD_CAPACITY_DATA PREAD_CAPACITY_USER_OUT
struct _PREVENT_MEDIA_REMOVAL_USER_IN PREVENT_MEDIA_REMOVAL_USER_IN
USHORT WriteSpeedSupported
PMODE_MRW_PAGE PGET_MRW_MODE_USER_OUT
struct _TRACK_INFO_BLOCK_USER_OUT * PTRACK_INFO_BLOCK_USER_OUT
struct _RESERVE_TRACK_EX_USER_IN RESERVE_TRACK_EX_USER_IN
struct _LL_WRITE_USER_IN::@907::@908 Fields
UCHAR LastSesLeadInMSF[4]
struct _SET_CD_SPEED_USER_IN * PSET_CD_SPEED_USER_IN
struct _DISC_INFO_BLOCK_USER_OUT * PDISC_INFO_BLOCK_USER_OUT
struct _FORMAT_CDRW_PARAMETERS_USER_IN FORMAT_CDRW_PARAMETERS_USER_IN
UCHAR AdditionalSenseCodeQualifier
PREAD_TOC_CD_TEXT PREAD_CD_TEXT_USER_OUT
USHORT NumberVolumeLevels
struct _GET_DEVICE_INFO_OLD_USER_OUT GET_DEVICE_INFO_OLD_USER_OUT
struct _SET_DEFAULT_SESSION_USER_IN SET_DEFAULT_SESSION_USER_IN
struct _DISK_VERIFY_USER_IN * PDISK_VERIFY_USER_IN
struct _CDRW_RESET_DRIVER_USER_IN CDRW_RESET_DRIVER_USER_IN
MODE_PARAMETER_HEADER Header
struct _TRACK_INFO_BLOCK_USER_IN * PTRACK_INFO_BLOCK_USER_IN
READ_TOC_ATIP READ_ATIP_USER_OUT
UCHAR SimulatedWModes[4][16]
struct _MODE_SENSE_USER_IN::@919::@920 Fields
struct _GET_CAPABILITIES_USER_OUT GET_CAPABILITIES_USER_OUT
struct _GET_CAPABILITIES_3_USER_OUT GET_CAPABILITIES_3_USER_OUT
struct _DISC_STATUS_INFO_USER_OUT * PDISC_STATUS_INFO_USER_OUT
DVD_STRUCTURE_FORMAT Format
DVD_START_SESSION_USER_OUT DVD_END_SESSION_USER_IN
enum _STORAGE_MEDIA_TYPE * PSTORAGE_MEDIA_TYPE
PREAD_TOC_ATIP PREAD_ATIP_USER_OUT
struct _MODE_WRITE_PARAMS_PAGE_USER::@921::@926 Fields
struct _MODE_WRITE_PARAMS_PAGE_USER::@925::@930::_SubHdrParams1 Params1
PDVD_START_SESSION_USER_OUT PDVD_END_SESSION_USER_IN
struct _CLOSE_TRK_SES_USER_IN::@911::@913 Fields
struct _BUFFER_CAPACITY_BLOCK_USER_OUT BUFFER_CAPACITY_BLOCK_USER_OUT