ReactOS 0.4.16-dev-289-g096a551
cdromp.h File Reference
#include <scsi.h>
#include <storduid.h>
#include <mountdev.h>
#include <ioevent.h>
#include <ntintsafe.h>
Include dependency graph for cdromp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _CDROM_SCAN_FOR_SPECIAL_INFO
 
struct  _SRB_HISTORY_ITEM
 
struct  _SRB_HISTORY
 
struct  _MEDIA_CHANGE_DETECTION_INFO
 
struct  _ZERO_POWER_ODD_INFO
 
struct  _CDROM_ERROR_LOG_DATA
 
struct  _CDROM_PRIVATE_FDO_DATA
 
struct  _FILE_OBJECT_CONTEXT
 

Macros

#define PTRALIGN
 
#define MAXIMUM_RETRY_FOR_SINGLE_IO_IN_100NS_UNITS   (0x3B9ACA00)
 
#define CLASSP_REG_SUBKEY_NAME   (L"Classpnp")
 
#define CLASSP_REG_HACK_VALUE_NAME   (L"HackMask")
 
#define CLASSP_REG_MMC_DETECTION_VALUE_NAME   (L"MMCDetectionState")
 
#define CLASSP_REG_WRITE_CACHE_VALUE_NAME   (L"WriteCacheEnableOverride")
 
#define CLASSP_REG_PERF_RESTORE_VALUE_NAME   (L"RestorePerfAtCount")
 
#define CLASSP_REG_REMOVAL_POLICY_VALUE_NAME   (L"UserRemovalPolicy")
 
#define WINPE_REG_KEY_NAME   (L"\\Registry\\Machine\\System\\CurrentControlSet\\Control\\MiniNT")
 
#define CLASS_PERF_RESTORE_MINIMUM   (0x10)
 
#define CLASS_ERROR_LEVEL_1   (0x4)
 
#define CLASS_ERROR_LEVEL_2   (0x8)
 
#define FDO_HACK_CANNOT_LOCK_MEDIA   (0x00000001)
 
#define FDO_HACK_GESN_IS_BAD   (0x00000002)
 
#define FDO_HACK_NO_RESERVE6   (0x00000008)
 
#define FDO_HACK_GESN_IGNORE_OPCHANGE   (0x00000010)
 
#define FDO_HACK_NO_STREAMING   (0x00000020)
 
#define FDO_HACK_NO_ASYNCHRONOUS_NOTIFICATION   (0x00000040)
 
#define FDO_HACK_VALID_FLAGS   (0x0000007F)
 
#define FDO_HACK_INVALID_FLAGS   (~FDO_HACK_VALID_FLAGS)
 
#define CDROM_VOLUME_VERIFY_CHECKED   0x34
 
#define CDROM_TAG_PRIVATE_DATA   'CPcS'
 
#define DELAY_TIME_TO_ENTER_ZERO_POWER_IN_MS   (60 * 1000)
 
#define DELAY_TIME_TO_ENTER_AOAC_IDLE_POWER_IN_MS   (10 * 1000)
 
#define BECOMING_READY_RETRY_COUNT   (15)
 
#define BECOMING_READY_RETRY_INTERNVAL_IN_100NS   (2 * 1000 * 1000)
 
#define NUM_ERROR_LOG_ENTRIES   16
 
#define NOT_READY_RETRY_INTERVAL   10
 
#define MODE_PAGE_DATA_SIZE   192
 
#define INVALID_SESSION   ((ULONG)-1)
 

Typedefs

typedef struct _CDROM_SCAN_FOR_SPECIAL_INFO CDROM_SCAN_FOR_SPECIAL_INFO
 
typedef struct _CDROM_SCAN_FOR_SPECIAL_INFOPCDROM_SCAN_FOR_SPECIAL_INFO
 
typedef enum _MEDIA_CHANGE_DETECTION_STATE MEDIA_CHANGE_DETECTION_STATE
 
typedef enum _MEDIA_CHANGE_DETECTION_STATEPMEDIA_CHANGE_DETECTION_STATE
 
typedef struct _SRB_HISTORY_ITEM SRB_HISTORY_ITEM
 
typedef struct _SRB_HISTORY_ITEMPSRB_HISTORY_ITEM
 
typedef struct _SRB_HISTORY SRB_HISTORY
 
typedef struct _SRB_HISTORYPSRB_HISTORY
 
typedef struct _MEDIA_CHANGE_DETECTION_INFO MEDIA_CHANGE_DETECTION_INFO
 
typedef struct _MEDIA_CHANGE_DETECTION_INFOPMEDIA_CHANGE_DETECTION_INFO
 
typedef struct _ZERO_POWER_ODD_INFO ZERO_POWER_ODD_INFO
 
typedef struct _ZERO_POWER_ODD_INFOPZERO_POWER_ODD_INFO
 
typedef enum MEDIA_LOCK_TYPEPMEDIA_LOCK_TYPE
 
typedef enum _CDROM_DETECTION_STATE CDROM_DETECTION_STATE
 
typedef enum _CDROM_DETECTION_STATEPCDROM_DETECTION_STATE
 
typedef struct _CDROM_ERROR_LOG_DATA CDROM_ERROR_LOG_DATA
 
typedef struct _CDROM_ERROR_LOG_DATAPCDROM_ERROR_LOG_DATA
 
typedef struct _CDROM_PRIVATE_FDO_DATA CDROM_PRIVATE_FDO_DATA
 
typedef struct _CDROM_PRIVATE_FDO_DATAPCDROM_PRIVATE_FDO_DATA
 
typedef struct _FILE_OBJECT_CONTEXT FILE_OBJECT_CONTEXT
 
typedef struct _FILE_OBJECT_CONTEXTPFILE_OBJECT_CONTEXT
 

Enumerations

enum  _MEDIA_CHANGE_DETECTION_STATE {
  MediaUnknown , MediaPresent , MediaNotPresent , MediaUnavailable ,
  MediaUnknown , MediaPresent , MediaNotPresent , MediaUnavailable
}
 
enum  MEDIA_LOCK_TYPE {
  SimpleMediaLock , SecureMediaLock , InternalMediaLock , SimpleMediaLock ,
  SecureMediaLock , InternalMediaLock
}
 
enum  _CDROM_DETECTION_STATE { CdromDetectionUnknown = 0 , CdromDetectionUnsupported = 1 , CdromDetectionSupported = 2 }
 

Variables

CDROM_SCAN_FOR_SPECIAL_INFO CdRomBadItems []
 

Macro Definition Documentation

◆ BECOMING_READY_RETRY_COUNT

#define BECOMING_READY_RETRY_COUNT   (15)

Definition at line 261 of file cdromp.h.

◆ BECOMING_READY_RETRY_INTERNVAL_IN_100NS

#define BECOMING_READY_RETRY_INTERNVAL_IN_100NS   (2 * 1000 * 1000)

Definition at line 262 of file cdromp.h.

◆ CDROM_TAG_PRIVATE_DATA

#define CDROM_TAG_PRIVATE_DATA   'CPcS'

Definition at line 173 of file cdromp.h.

◆ CDROM_VOLUME_VERIFY_CHECKED

#define CDROM_VOLUME_VERIFY_CHECKED   0x34

Definition at line 171 of file cdromp.h.

◆ CLASS_ERROR_LEVEL_1

#define CLASS_ERROR_LEVEL_1   (0x4)

Definition at line 130 of file cdromp.h.

◆ CLASS_ERROR_LEVEL_2

#define CLASS_ERROR_LEVEL_2   (0x8)

Definition at line 131 of file cdromp.h.

◆ CLASS_PERF_RESTORE_MINIMUM

#define CLASS_PERF_RESTORE_MINIMUM   (0x10)

Definition at line 129 of file cdromp.h.

◆ CLASSP_REG_HACK_VALUE_NAME

#define CLASSP_REG_HACK_VALUE_NAME   (L"HackMask")

Definition at line 122 of file cdromp.h.

◆ CLASSP_REG_MMC_DETECTION_VALUE_NAME

#define CLASSP_REG_MMC_DETECTION_VALUE_NAME   (L"MMCDetectionState")

Definition at line 123 of file cdromp.h.

◆ CLASSP_REG_PERF_RESTORE_VALUE_NAME

#define CLASSP_REG_PERF_RESTORE_VALUE_NAME   (L"RestorePerfAtCount")

Definition at line 125 of file cdromp.h.

◆ CLASSP_REG_REMOVAL_POLICY_VALUE_NAME

#define CLASSP_REG_REMOVAL_POLICY_VALUE_NAME   (L"UserRemovalPolicy")

Definition at line 126 of file cdromp.h.

◆ CLASSP_REG_SUBKEY_NAME

#define CLASSP_REG_SUBKEY_NAME   (L"Classpnp")

Definition at line 120 of file cdromp.h.

◆ CLASSP_REG_WRITE_CACHE_VALUE_NAME

#define CLASSP_REG_WRITE_CACHE_VALUE_NAME   (L"WriteCacheEnableOverride")

Definition at line 124 of file cdromp.h.

◆ DELAY_TIME_TO_ENTER_AOAC_IDLE_POWER_IN_MS

#define DELAY_TIME_TO_ENTER_AOAC_IDLE_POWER_IN_MS   (10 * 1000)

Definition at line 260 of file cdromp.h.

◆ DELAY_TIME_TO_ENTER_ZERO_POWER_IN_MS

#define DELAY_TIME_TO_ENTER_ZERO_POWER_IN_MS   (60 * 1000)

Definition at line 259 of file cdromp.h.

◆ FDO_HACK_CANNOT_LOCK_MEDIA

#define FDO_HACK_CANNOT_LOCK_MEDIA   (0x00000001)

Definition at line 133 of file cdromp.h.

◆ FDO_HACK_GESN_IGNORE_OPCHANGE

#define FDO_HACK_GESN_IGNORE_OPCHANGE   (0x00000010)

Definition at line 136 of file cdromp.h.

◆ FDO_HACK_GESN_IS_BAD

#define FDO_HACK_GESN_IS_BAD   (0x00000002)

Definition at line 134 of file cdromp.h.

◆ FDO_HACK_INVALID_FLAGS

#define FDO_HACK_INVALID_FLAGS   (~FDO_HACK_VALID_FLAGS)

Definition at line 141 of file cdromp.h.

◆ FDO_HACK_NO_ASYNCHRONOUS_NOTIFICATION

#define FDO_HACK_NO_ASYNCHRONOUS_NOTIFICATION   (0x00000040)

Definition at line 138 of file cdromp.h.

◆ FDO_HACK_NO_RESERVE6

#define FDO_HACK_NO_RESERVE6   (0x00000008)

Definition at line 135 of file cdromp.h.

◆ FDO_HACK_NO_STREAMING

#define FDO_HACK_NO_STREAMING   (0x00000020)

Definition at line 137 of file cdromp.h.

◆ FDO_HACK_VALID_FLAGS

#define FDO_HACK_VALID_FLAGS   (0x0000007F)

Definition at line 140 of file cdromp.h.

◆ INVALID_SESSION

#define INVALID_SESSION   ((ULONG)-1)

Definition at line 381 of file cdromp.h.

◆ MAXIMUM_RETRY_FOR_SINGLE_IO_IN_100NS_UNITS

#define MAXIMUM_RETRY_FOR_SINGLE_IO_IN_100NS_UNITS   (0x3B9ACA00)

Definition at line 50 of file cdromp.h.

◆ MODE_PAGE_DATA_SIZE

#define MODE_PAGE_DATA_SIZE   192

Definition at line 376 of file cdromp.h.

◆ NOT_READY_RETRY_INTERVAL

#define NOT_READY_RETRY_INTERVAL   10

Definition at line 375 of file cdromp.h.

◆ NUM_ERROR_LOG_ENTRIES

#define NUM_ERROR_LOG_ENTRIES   16

Definition at line 323 of file cdromp.h.

◆ PTRALIGN

#define PTRALIGN

Definition at line 44 of file cdromp.h.

◆ WINPE_REG_KEY_NAME

#define WINPE_REG_KEY_NAME   (L"\\Registry\\Machine\\System\\CurrentControlSet\\Control\\MiniNT")

Definition at line 127 of file cdromp.h.

Typedef Documentation

◆ CDROM_DETECTION_STATE

◆ CDROM_ERROR_LOG_DATA

◆ CDROM_PRIVATE_FDO_DATA

◆ CDROM_SCAN_FOR_SPECIAL_INFO

◆ FILE_OBJECT_CONTEXT

◆ MEDIA_CHANGE_DETECTION_INFO

◆ MEDIA_CHANGE_DETECTION_STATE

◆ PCDROM_DETECTION_STATE

◆ PCDROM_ERROR_LOG_DATA

◆ PCDROM_PRIVATE_FDO_DATA

◆ PCDROM_SCAN_FOR_SPECIAL_INFO

◆ PFILE_OBJECT_CONTEXT

◆ PMEDIA_CHANGE_DETECTION_INFO

◆ PMEDIA_CHANGE_DETECTION_STATE

◆ PMEDIA_LOCK_TYPE

◆ PSRB_HISTORY

◆ PSRB_HISTORY_ITEM

◆ PZERO_POWER_ODD_INFO

◆ SRB_HISTORY

◆ SRB_HISTORY_ITEM

◆ ZERO_POWER_ODD_INFO

Enumeration Type Documentation

◆ _CDROM_DETECTION_STATE

Enumerator
CdromDetectionUnknown 
CdromDetectionUnsupported 
CdromDetectionSupported 

Definition at line 295 of file cdromp.h.

295 {
@ CdromDetectionUnknown
Definition: cdromp.h:296
@ CdromDetectionSupported
Definition: cdromp.h:298
@ CdromDetectionUnsupported
Definition: cdromp.h:297
enum _CDROM_DETECTION_STATE * PCDROM_DETECTION_STATE
enum _CDROM_DETECTION_STATE CDROM_DETECTION_STATE

◆ _MEDIA_CHANGE_DETECTION_STATE

Enumerator
MediaUnknown 
MediaPresent 
MediaNotPresent 
MediaUnavailable 
MediaUnknown 
MediaPresent 
MediaNotPresent 
MediaUnavailable 

Definition at line 80 of file cdromp.h.

80 {
84 MediaUnavailable // e.g. cd-r media undergoing burn
enum _MEDIA_CHANGE_DETECTION_STATE * PMEDIA_CHANGE_DETECTION_STATE
@ MediaUnknown
Definition: cdromp.h:81
@ MediaPresent
Definition: cdromp.h:82
@ MediaNotPresent
Definition: cdromp.h:83
@ MediaUnavailable
Definition: cdromp.h:84
enum _MEDIA_CHANGE_DETECTION_STATE MEDIA_CHANGE_DETECTION_STATE

◆ MEDIA_LOCK_TYPE

Enumerator
SimpleMediaLock 
SecureMediaLock 
InternalMediaLock 
SimpleMediaLock 
SecureMediaLock 
InternalMediaLock 

Definition at line 288 of file cdromp.h.

288 {
enum MEDIA_LOCK_TYPE * PMEDIA_LOCK_TYPE
MEDIA_LOCK_TYPE
Definition: cdromp.h:288
@ SimpleMediaLock
Definition: cdromp.h:289
@ InternalMediaLock
Definition: cdromp.h:291
@ SecureMediaLock
Definition: cdromp.h:290

Variable Documentation

◆ CdRomBadItems

CDROM_SCAN_FOR_SPECIAL_INFO CdRomBadItems[]
extern

Definition at line 100 of file data.c.

Referenced by DeviceEvtSelfManagedIoInit().