ReactOS 0.4.16-dev-340-g0540c21
mcd.h File Reference
#include "srb.h"
#include "scsi.h"
#include "ntddchgr.h"
Include dependency graph for mcd.h:

Go to the source code of this file.

Classes

struct  _MCD_INIT_DATA
 

Macros

#define CHANGERAPI   DECLSPEC_IMPORT
 
#define DebugPrint(x)
 
#define MAXIMUM_CHANGER_INQUIRY_DATA   252
 

Typedefs

typedef NTSTATUS NTAPI(* CHANGER_INITIALIZE) (IN PDEVICE_OBJECT DeviceObject)
 
typedef ULONG NTAPI(* CHANGER_EXTENSION_SIZE) (VOID)
 
typedef VOID NTAPI(* CHANGER_ERROR_ROUTINE) (PDEVICE_OBJECT DeviceObject, PSCSI_REQUEST_BLOCK Srb, NTSTATUS *Status, BOOLEAN *Retry)
 
typedef NTSTATUS NTAPI(* CHANGER_COMMAND_ROUTINE) (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
 
typedef NTSTATUS NTAPI(* CHANGER_PERFORM_DIAGNOSTICS) (IN PDEVICE_OBJECT DeviceObject, OUT PWMI_CHANGER_PROBLEM_DEVICE_ERROR ChangerDeviceError)
 
typedef struct _MCD_INIT_DATA MCD_INIT_DATA
 
typedef struct _MCD_INIT_DATAPMCD_INIT_DATA
 

Functions

CHANGERAPI PVOID NTAPI ChangerClassAllocatePool (IN POOL_TYPE PoolType, IN ULONG NumberOfBytes)
 
VOID ChangerClassDebugPrint (ULONG DebugPrintLevel, PCCHAR DebugMessage,...)
 
CHANGERAPI PVOID NTAPI ChangerClassFreePool (IN PVOID PoolToFree)
 
CHANGERAPI NTSTATUS NTAPI ChangerClassSendSrbSynchronous (IN PDEVICE_OBJECT DeviceObject, IN PSCSI_REQUEST_BLOCK Srb, IN PVOID Buffer, IN ULONG BufferSize, IN BOOLEAN WriteToDevice)
 
CHANGERAPI NTSTATUS NTAPI ChangerClassInitialize (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath, IN PMCD_INIT_DATA MCDInitData)
 

Macro Definition Documentation

◆ CHANGERAPI

#define CHANGERAPI   DECLSPEC_IMPORT

Definition at line 37 of file mcd.h.

◆ DebugPrint

#define DebugPrint (   x)

Definition at line 47 of file mcd.h.

◆ MAXIMUM_CHANGER_INQUIRY_DATA

#define MAXIMUM_CHANGER_INQUIRY_DATA   252

Definition at line 50 of file mcd.h.

Typedef Documentation

◆ CHANGER_COMMAND_ROUTINE

typedef NTSTATUS NTAPI(* CHANGER_COMMAND_ROUTINE) (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)

Definition at line 97 of file mcd.h.

◆ CHANGER_ERROR_ROUTINE

Definition at line 90 of file mcd.h.

◆ CHANGER_EXTENSION_SIZE

typedef ULONG NTAPI(* CHANGER_EXTENSION_SIZE) (VOID)

Definition at line 86 of file mcd.h.

◆ CHANGER_INITIALIZE

typedef NTSTATUS NTAPI(* CHANGER_INITIALIZE) (IN PDEVICE_OBJECT DeviceObject)

Definition at line 82 of file mcd.h.

◆ CHANGER_PERFORM_DIAGNOSTICS

typedef NTSTATUS NTAPI(* CHANGER_PERFORM_DIAGNOSTICS) (IN PDEVICE_OBJECT DeviceObject, OUT PWMI_CHANGER_PROBLEM_DEVICE_ERROR ChangerDeviceError)

Definition at line 102 of file mcd.h.

◆ MCD_INIT_DATA

◆ PMCD_INIT_DATA

Function Documentation

◆ ChangerClassAllocatePool()

CHANGERAPI PVOID NTAPI ChangerClassAllocatePool ( IN POOL_TYPE  PoolType,
IN ULONG  NumberOfBytes 
)

◆ ChangerClassDebugPrint()

VOID ChangerClassDebugPrint ( ULONG  DebugPrintLevel,
PCCHAR  DebugMessage,
  ... 
)

◆ ChangerClassFreePool()

CHANGERAPI PVOID NTAPI ChangerClassFreePool ( IN PVOID  PoolToFree)

◆ ChangerClassInitialize()

CHANGERAPI NTSTATUS NTAPI ChangerClassInitialize ( IN PDRIVER_OBJECT  DriverObject,
IN PUNICODE_STRING  RegistryPath,
IN PMCD_INIT_DATA  MCDInitData 
)

◆ ChangerClassSendSrbSynchronous()

CHANGERAPI NTSTATUS NTAPI ChangerClassSendSrbSynchronous ( IN PDEVICE_OBJECT  DeviceObject,
IN PSCSI_REQUEST_BLOCK  Srb,
IN PVOID  Buffer,
IN ULONG  BufferSize,
IN BOOLEAN  WriteToDevice 
)