ScummVM API documentation
ntddcdrm.h File Reference

Go to the source code of this file.

Classes

struct  _TRACK_DATA
 
struct  _CDROM_DISK_DATA
 
struct  _CDROM_PLAY_AUDIO_MSF
 
struct  _CDROM_READ_TOC_EX
 
struct  _CDROM_SEEK_AUDIO_MSF
 
struct  _CDROM_SUB_Q_DATA_FORMAT
 
struct  _CDROM_TOC
 
struct  _CDROM_TOC_ATIP_DATA_BLOCK
 
struct  _CDROM_TOC_FULL_TOC_DATA_BLOCK
 
struct  _SUB_Q_HEADER
 
struct  _SUB_Q_MEDIA_CATALOG_NUMBER
 
struct  _SUB_Q_TRACK_ISRC
 
struct  _SUB_Q_CURRENT_POSITION
 
union  _SUB_Q_CHANNEL_DATA
 
struct  _CDROM_AUDIO_CONTROL
 
struct  _VOLUME_CONTROL
 
struct  __RAW_READ_INFO
 

Macros

#define IOCTL_CDROM_BASE   FILE_DEVICE_CD_ROM
 
#define IOCTL_CDROM_CHECK_VERIFY   CTL_CODE(IOCTL_CDROM_BASE, 0x0200, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_FIND_NEW_DEVICES   CTL_CODE(IOCTL_CDROM_BASE, 0x0206, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_GET_CONTROL   CTL_CODE(IOCTL_CDROM_BASE, 0x000D, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_GET_DRIVE_GEOMETRY   CTL_CODE(IOCTL_CDROM_BASE, 0x0013, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_GET_LAST_SESSION   CTL_CODE(IOCTL_CDROM_BASE, 0x000E, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_GET_VOLUME   CTL_CODE(IOCTL_CDROM_BASE, 0x0005, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_PAUSE_AUDIO   CTL_CODE(IOCTL_CDROM_BASE, 0x0003, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_PLAY_AUDIO_MSF   CTL_CODE(IOCTL_CDROM_BASE, 0x0006, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_RAW_READ   CTL_CODE(IOCTL_CDROM_BASE, 0x000F, METHOD_OUT_DIRECT, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_READ_Q_CHANNEL   CTL_CODE(IOCTL_CDROM_BASE, 0x000B, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_READ_TOC   CTL_CODE(IOCTL_CDROM_BASE, 0x0000, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_READ_TOC_EX   CTL_CODE(IOCTL_CDROM_BASE, 0x0015, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_RESUME_AUDIO   CTL_CODE(IOCTL_CDROM_BASE, 0x0004, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_SEEK_AUDIO_MSF   CTL_CODE(IOCTL_CDROM_BASE, 0x0001, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_SET_VOLUME   CTL_CODE(IOCTL_CDROM_BASE, 0x000A, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_SIMBAD   CTL_CODE(IOCTL_CDROM_BASE, 0x1003, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define IOCTL_CDROM_STOP_AUDIO   CTL_CODE(IOCTL_CDROM_BASE, 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS)
 
#define MAXIMUM_NUMBER_TRACKS   100
 
#define MAXIMUM_CDROM_SIZE   804
 
#define MINIMUM_CDROM_READ_TOC_EX_SIZE   2
 
#define CDROM_DISK_AUDIO_TRACK   0x00000001
 
#define CDROM_DISK_DATA_TRACK   0x00000002
 
#define CDROM_READ_TOC_EX_FORMAT_TOC   0x00
 
#define CDROM_READ_TOC_EX_FORMAT_SESSION   0x01
 
#define CDROM_READ_TOC_EX_FORMAT_FULL_TOC   0x02
 
#define CDROM_READ_TOC_EX_FORMAT_PMA   0x03
 
#define CDROM_READ_TOC_EX_FORMAT_ATIP   0x04
 
#define CDROM_READ_TOC_EX_FORMAT_CDTEXT   0x05
 
#define IOCTL_CDROM_SUB_Q_CHANNEL   0x00
 
#define IOCTL_CDROM_CURRENT_POSITION   0x01
 
#define IOCTL_CDROM_MEDIA_CATALOG   0x02
 
#define IOCTL_CDROM_TRACK_ISRC   0x03
 
#define CDROM_TOC_SIZE   sizeof(CDROM_TOC)
 
#define CDROM_CD_TEXT_PACK_ALBUM_NAME   0x80
 
#define CDROM_CD_TEXT_PACK_PERFORMER   0x81
 
#define CDROM_CD_TEXT_PACK_SONGWRITER   0x82
 
#define CDROM_CD_TEXT_PACK_COMPOSER   0x83
 
#define CDROM_CD_TEXT_PACK_ARRANGER   0x84
 
#define CDROM_CD_TEXT_PACK_MESSAGES   0x85
 
#define CDROM_CD_TEXT_PACK_DISC_ID   0x86
 
#define CDROM_CD_TEXT_PACK_GENRE   0x87
 
#define CDROM_CD_TEXT_PACK_TOC_INFO   0x88
 
#define CDROM_CD_TEXT_PACK_TOC_INFO2   0x89
 
#define CDROM_CD_TEXT_PACK_UPC_EAN   0x8e
 
#define CDROM_CD_TEXT_PACK_SIZE_INFO   0x8f
 
#define ADR_NO_MODE_INFORMATION   0x0
 
#define ADR_ENCODES_CURRENT_POSITION   0x1
 
#define ADR_ENCODES_MEDIA_CATALOG   0x2
 
#define ADR_ENCODES_ISRC   0x3
 
#define AUDIO_STATUS_NOT_SUPPORTED   0x00
 
#define AUDIO_STATUS_IN_PROGRESS   0x11
 
#define AUDIO_STATUS_PAUSED   0x12
 
#define AUDIO_STATUS_PLAY_COMPLETE   0x13
 
#define AUDIO_STATUS_PLAY_ERROR   0x14
 
#define AUDIO_STATUS_NO_STATUS   0x15
 
#define AUDIO_WITH_PREEMPHASIS   0x1
 
#define DIGITAL_COPY_PERMITTED   0x2
 
#define AUDIO_DATA_TRACK   0x4
 
#define TWO_FOUR_CHANNEL_AUDIO   0x8
 

Typedefs

typedef struct _TRACK_DATA TRACK_DATA
 
typedef struct _TRACK_DATAPTRACK_DATA
 
typedef struct _CDROM_DISK_DATA CDROM_DISK_DATA
 
typedef struct _CDROM_DISK_DATAPCDROM_DISK_DATA
 
typedef struct _CDROM_PLAY_AUDIO_MSF CDROM_PLAY_AUDIO_MSF
 
typedef struct _CDROM_PLAY_AUDIO_MSFPCDROM_PLAY_AUDIO_MSF
 
typedef struct _CDROM_READ_TOC_EX CDROM_READ_TOC_EX
 
typedef struct _CDROM_READ_TOC_EXPCDROM_READ_TOC_EX
 
typedef struct _CDROM_SEEK_AUDIO_MSF CDROM_SEEK_AUDIO_MSF
 
typedef struct _CDROM_SEEK_AUDIO_MSFPCDROM_SEEK_AUDIO_MSF
 
typedef struct _CDROM_SUB_Q_DATA_FORMAT CDROM_SUB_Q_DATA_FORMAT
 
typedef struct _CDROM_SUB_Q_DATA_FORMATPCDROM_SUB_Q_DATA_FORMAT
 
typedef struct _CDROM_TOC CDROM_TOC
 
typedef struct _CDROM_TOCPCDROM_TOC
 
typedef struct _CDROM_TOC_ATIP_DATA_BLOCK CDROM_TOC_ATIP_DATA_BLOCK
 
typedef struct _CDROM_TOC_ATIP_DATA_BLOCKPCDROM_TOC_ATIP_DATA_BLOCK
 
typedef struct _CDROM_TOC_FULL_TOC_DATA_BLOCK CDROM_TOC_FULL_TOC_DATA_BLOCK
 
typedef struct _CDROM_TOC_FULL_TOC_DATA_BLOCKPCDROM_TOC_FULL_TOC_DATA_BLOCK
 
typedef struct _SUB_Q_HEADER SUB_Q_HEADER
 
typedef struct _SUB_Q_HEADERPSUB_Q_HEADER
 
typedef struct _SUB_Q_MEDIA_CATALOG_NUMBER SUB_Q_MEDIA_CATALOG_NUMBER
 
typedef struct _SUB_Q_MEDIA_CATALOG_NUMBERPSUB_Q_MEDIA_CATALOG_NUMBER
 
typedef struct _SUB_Q_TRACK_ISRC SUB_Q_TRACK_ISRC
 
typedef struct _SUB_Q_TRACK_ISRCPSUB_Q_TRACK_ISRC
 
typedef struct _SUB_Q_CURRENT_POSITION SUB_Q_CURRENT_POSITION
 
typedef struct _SUB_Q_CURRENT_POSITIONPSUB_Q_CURRENT_POSITION
 
typedef union _SUB_Q_CHANNEL_DATA SUB_Q_CHANNEL_DATA
 
typedef union _SUB_Q_CHANNEL_DATAPSUB_Q_CHANNEL_DATA
 
typedef struct _CDROM_AUDIO_CONTROL CDROM_AUDIO_CONTROL
 
typedef struct _CDROM_AUDIO_CONTROLPCDROM_AUDIO_CONTROL
 
typedef struct _VOLUME_CONTROL VOLUME_CONTROL
 
typedef struct _VOLUME_CONTROLPVOLUME_CONTROL
 
typedef enum _TRACK_MODE_TYPE TRACK_MODE_TYPE
 
typedef enum _TRACK_MODE_TYPE * PTRACK_MODE_TYPE
 
typedef struct __RAW_READ_INFO RAW_READ_INFO
 
typedef struct __RAW_READ_INFOPRAW_READ_INFO
 

Enumerations

enum  _TRACK_MODE_TYPE { YellowMode2, XAForm2, CDDA }
 

Detailed Description

Copyright 2012, 2013 MinGW.org project

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.