ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

ntdddisk.h File Reference
#include "ntddstor.h"
#include <pshpack1.h>
#include <poppack.h>

Go to the source code of this file.

Data Structures

struct  PDISK_CONTROLLER_NUMBER
struct  PDISK_INT13_INFO
struct  PDISK_EX_INT13_INFO
struct  PDISK_DETECTION_INFO
struct  PDISK_GEOMETRY
struct  PDISK_GEOMETRY_EX
struct  PPARTITION_INFORMATION
struct  PPARTITION_INFORMATION_GPT
struct  PDISK_PARTITION_INFO
struct  PDISK_PERFORMANCE
struct  PPARTITION_INFORMATION_MBR
struct  PPARTITION_INFORMATION_EX
struct  PDRIVE_LAYOUT_INFORMATION
struct  PDRIVE_LAYOUT_INFORMATION_MBR
struct  PDRIVE_LAYOUT_INFORMATION_GPT
struct  PDRIVE_LAYOUT_INFORMATION_EX
struct  PFORMAT_EX_PARAMETERS
struct  PFORMAT_PARAMETERS
struct  PGET_LENGTH_INFORMATION
struct  PREASSIGN_BLOCKS
struct  PSET_PARTITION_INFORMATION
struct  PSET_PARTITION_INFORMATION_EX
struct  PVERIFY_INFORMATION
struct  LPGETVERSIONINPARAMS
struct  LPIDEREGS
struct  LPSENDCMDINPARAMS
struct  LPDRIVERSTATUS
struct  LPSENDCMDOUTPARAMS
struct  PMAPPED_ADDRESS

Defines

#define __GNU_EXTENSION
#define DD_DISK_DEVICE_NAME   "\\Device\\UNKNOWN"
#define DD_DISK_DEVICE_NAME_U   L"\\Device\\UNKNOWN"
#define IOCTL_DISK_BASE   FILE_DEVICE_DISK
#define IOCTL_DISK_CHECK_VERIFY   CTL_CODE(IOCTL_DISK_BASE, 0x0200, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_CONTROLLER_NUMBER   CTL_CODE(IOCTL_DISK_BASE, 0x0011, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_CREATE_DISK   CTL_CODE(IOCTL_DISK_BASE, 0x0016, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_DELETE_DRIVE_LAYOUT   CTL_CODE(IOCTL_DISK_BASE, 0x0040, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_FIND_NEW_DEVICES   CTL_CODE(IOCTL_DISK_BASE, 0x0206, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_FORMAT_TRACKS   CTL_CODE(IOCTL_DISK_BASE, 0x0006, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_FORMAT_TRACKS_EX   CTL_CODE(IOCTL_DISK_BASE, 0x000b, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_GET_CACHE_INFORMATION   CTL_CODE(IOCTL_DISK_BASE, 0x0035, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_GET_DRIVE_GEOMETRY   CTL_CODE(IOCTL_DISK_BASE, 0x0000, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_GET_DRIVE_GEOMETRY_EX   CTL_CODE(IOCTL_DISK_BASE, 0x0028, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_GET_DRIVE_LAYOUT   CTL_CODE(IOCTL_DISK_BASE, 0x0003, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_GET_DRIVE_LAYOUT_EX   CTL_CODE(IOCTL_DISK_BASE, 0x0014, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_GET_MEDIA_TYPES   CTL_CODE(IOCTL_DISK_BASE, 0x0300, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_GET_LENGTH_INFO   CTL_CODE(IOCTL_DISK_BASE, 0x0017, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_GET_PARTITION_INFO   CTL_CODE(IOCTL_DISK_BASE, 0x0001, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_GET_PARTITION_INFO_EX   CTL_CODE(IOCTL_DISK_BASE, 0x0012, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_GROW_PARTITION   CTL_CODE(IOCTL_DISK_BASE, 0x0034, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_HISTOGRAM_STRUCTURE   CTL_CODE(IOCTL_DISK_BASE, 0x000c, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_HISTOGRAM_DATA   CTL_CODE(IOCTL_DISK_BASE, 0x000d, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_HISTOGRAM_RESET   CTL_CODE(IOCTL_DISK_BASE, 0x000e, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_INTERNAL_CLEAR_VERIFY   CTL_CODE(IOCTL_DISK_BASE, 0x0101, METHOD_NEITHER, FILE_ANY_ACCESS)
#define IOCTL_DISK_INTERNAL_SET_VERIFY   CTL_CODE(IOCTL_DISK_BASE, 0x0100, METHOD_NEITHER, FILE_ANY_ACCESS)
#define IOCTL_DISK_IS_WRITABLE   CTL_CODE(IOCTL_DISK_BASE, 0x0009, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_LOGGING   CTL_CODE(IOCTL_DISK_BASE, 0x000a, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_PERFORMANCE   CTL_CODE(IOCTL_DISK_BASE, 0x0008, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_PERFORMANCE_OFF   CTL_CODE(IOCTL_DISK_BASE, 0x0018, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_REASSIGN_BLOCKS   CTL_CODE(IOCTL_DISK_BASE, 0x0007, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_REQUEST_DATA   CTL_CODE(IOCTL_DISK_BASE, 0x0010, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_REQUEST_STRUCTURE   CTL_CODE(IOCTL_DISK_BASE, 0x000f, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_DISK_MEDIA_REMOVAL   CTL_CODE(IOCTL_DISK_BASE, 0x0201, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_EJECT_MEDIA   CTL_CODE(IOCTL_DISK_BASE, 0x0202, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_LOAD_MEDIA   CTL_CODE(IOCTL_DISK_BASE, 0x0203, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_RESERVE   CTL_CODE(IOCTL_DISK_BASE, 0x0204, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_RELEASE   CTL_CODE(IOCTL_DISK_BASE, 0x0205, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_FIND_NEW_DEVICES   CTL_CODE(IOCTL_DISK_BASE, 0x0206, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_SET_CACHE_INFORMATION   CTL_CODE(IOCTL_DISK_BASE, 0x0036, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define OBSOLETE_DISK_GET_WRITE_CACHE_STATE   CTL_CODE(IOCTL_DISK_BASE, 0x0037, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_SET_DRIVE_LAYOUT   CTL_CODE(IOCTL_DISK_BASE, 0x0004, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_SET_DRIVE_LAYOUT_EX   CTL_CODE(IOCTL_DISK_BASE, 0x0015, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_SET_PARTITION_INFO   CTL_CODE(IOCTL_DISK_BASE, 0x0002, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_SET_PARTITION_INFO_EX   CTL_CODE(IOCTL_DISK_BASE, 0x0013, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_UPDATE_DRIVE_SIZE   CTL_CODE(IOCTL_DISK_BASE, 0x0032, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_DISK_VERIFY   CTL_CODE(IOCTL_DISK_BASE, 0x0005, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define SMART_GET_VERSION   CTL_CODE(IOCTL_DISK_BASE, 0x0020, METHOD_BUFFERED, FILE_READ_ACCESS)
#define SMART_RCV_DRIVE_DATA   CTL_CODE(IOCTL_DISK_BASE, 0x0022, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define SMART_SEND_DRIVE_COMMAND   CTL_CODE(IOCTL_DISK_BASE, 0x0021, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define PARTITION_ENTRY_UNUSED   0x00
#define PARTITION_FAT_12   0x01
#define PARTITION_XENIX_1   0x02
#define PARTITION_XENIX_2   0x03
#define PARTITION_FAT_16   0x04
#define PARTITION_EXTENDED   0x05
#define PARTITION_HUGE   0x06
#define PARTITION_IFS   0x07
#define PARTITION_OS2BOOTMGR   0x0A
#define PARTITION_FAT32   0x0B
#define PARTITION_FAT32_XINT13   0x0C
#define PARTITION_XINT13   0x0E
#define PARTITION_XINT13_EXTENDED   0x0F
#define PARTITION_PREP   0x41
#define PARTITION_LDM   0x42
#define PARTITION_UNIX   0x63
#define VALID_NTFT   0xC0
#define PARTITION_NTFT   0x80
#define IsFTPartition(PartitionType)
#define IsContainerPartition(PartitionType)
#define IsRecognizedPartition(PartitionType)
#define WMI_DISK_GEOMETRY_GUID   {0x25007f51, 0x57c2, 0x11d1, {0xa5, 0x28, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0x10}}
#define DiskGeometryGetPartition(Geometry)   ((PDISK_PARTITION_INFO)((Geometry) + 1))
#define DiskGeometryGetDetect(Geometry)
#define CAP_ATA_ID_CMD   1
#define CAP_ATAPI_ID_CMD   2
#define CAP_SMART_CMD   4
#define ATAPI_ID_CMD   0xA1
#define ID_CMD   0xEC
#define SMART_CMD   0xB0
#define SMART_CYL_LOW   0x4F
#define SMART_CYL_HI   0xC2
#define SMART_NO_ERROR   0
#define SMART_IDE_ERROR   1
#define SMART_INVALID_FLAG   2
#define SMART_INVALID_COMMAND   3
#define SMART_INVALID_BUFFER   4
#define SMART_INVALID_DRIVE   5
#define SMART_INVALID_IOCTL   6
#define SMART_ERROR_NO_MEM   7
#define SMART_INVALID_REGISTER   8
#define SMART_NOT_SUPPORTED   9
#define SMART_NO_IDE_DEVICE   10
#define SMART_OFFLINE_ROUTINE_OFFLINE   0
#define SMART_SHORT_SELFTEST_OFFLINE   1
#define SMART_EXTENDED_SELFTEST_OFFLINE   2
#define SMART_ABORT_OFFLINE_SELFTEST   127
#define SMART_SHORT_SELFTEST_CAPTIVE   129
#define SMART_EXTENDED_SELFTEST_CAPTIVE   130
#define READ_ATTRIBUTE_BUFFER_SIZE   512
#define IDENTIFY_BUFFER_SIZE   512
#define READ_THRESHOLD_BUFFER_SIZE   512
#define SMART_LOG_SECTOR_SIZE   512
#define READ_ATTRIBUTES   0xD0
#define READ_THRESHOLDS   0xD1
#define ENABLE_DISABLE_AUTOSAVE   0xD2
#define SAVE_ATTRIBUTE_VALUES   0xD3
#define EXECUTE_OFFLINE_DIAGS   0xD4
#define SMART_READ_LOG   0xD5
#define SMART_WRITE_LOG   0xd6
#define ENABLE_SMART   0xD8
#define DISABLE_SMART   0xD9
#define RETURN_SMART_STATUS   0xDA
#define ENABLE_DISABLE_AUTO_OFFLINE   0xDB

Typedefs

typedef USHORT BAD_TRACK_NUMBER
typedef USHORTPBAD_TRACK_NUMBER
typedef enum _MEDIA_TYPE * PMEDIA_TYPE
typedef SET_PARTITION_INFORMATION SET_PARTITION_INFORMATION_MBR
typedef PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_GPT

Enumerations

enum  MEDIA_TYPE {
  Unknown, F5_1Pt2_512, F3_1Pt44_512, F3_2Pt88_512,
  F3_20Pt8_512, F3_720_512, F5_360_512, F5_320_512,
  F5_320_1024, F5_180_512, F5_160_512, RemovableMedia,
  FixedMedia, F3_120M_512, F3_640_512, F5_640_512,
  F5_720_512, F3_1Pt2_512, F3_1Pt23_1024, F5_1Pt23_1024,
  F3_128Mb_512, F3_230Mb_512, F8_256_128, Unknown,
  F5_1Pt2_512, F3_1Pt44_512, F3_2Pt88_512, F3_20Pt8_512,
  F3_720_512, F5_360_512, F5_320_512, F5_320_1024,
  F5_180_512, F5_160_512, RemovableMedia, FixedMedia,
  F3_120M_512, F3_640_512, F5_640_512, F5_720_512,
  F3_1Pt2_512, F3_1Pt23_1024, F5_1Pt23_1024, F3_128Mb_512,
  F3_230Mb_512, F8_256_128, F3_200Mb_512, F3_240M_512,
  F3_32M_512
}
enum  DETECTION_TYPE {
  DetectNone, DetectInt13, DetectExInt13, DetectNone,
  DetectInt13, DetectExInt13
}
enum  PARTITION_STYLE {
  PARTITION_STYLE_MBR, PARTITION_STYLE_GPT, PARTITION_STYLE_RAW, PARTITION_STYLE_MBR,
  PARTITION_STYLE_GPT, PARTITION_STYLE_RAW
}

Generated on Mon May 28 2012 05:45:00 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.