+#ifndef __DISKDUMP_H\r
+#define __DISKDUMP_H\r
+\r
+#include <ddk/ntddscsi.h>\r
+#include <ndk/ketypes.h>\r
+\r
+#define MM_CORE_DUMP_HEADER_MAGIC (0xdeafbead)\r
+#define MM_CORE_DUMP_HEADER_VERSION (0x1)\r
+\r
+typedef struct _MM_CORE_DUMP_HEADER\r
+{\r
+ ULONG Magic;\r
+ ULONG Version;\r
+ ULONG Type;\r
+ KTRAP_FRAME TrapFrame;\r
+ ULONG BugCheckCode;\r
+ ULONG BugCheckParameters[4];\r
+ PVOID FaultingStackBase;\r
+ ULONG FaultingStackSize;\r
+ ULONG PhysicalMemorySize;\r
+} MM_CORE_DUMP_HEADER, *PMM_CORE_DUMP_HEADER;\r
+\r
+typedef struct MM_CORE_DUMP_FUNCTIONS\r
+{\r
+ NTSTATUS (STDCALL *DumpPrepare)(PDEVICE_OBJECT DeviceObject, PDUMP_POINTERS DumpPointers);\r
+ NTSTATUS (STDCALL *DumpInit)(VOID);\r
+ NTSTATUS (STDCALL *DumpWrite)(LARGE_INTEGER Address, PMDL Mdl);\r
+ NTSTATUS (STDCALL *DumpFinish)(VOID);\r
+} MM_CORE_DUMP_FUNCTIONS, *PMM_CORE_DUMP_FUNCTIONS;\r
+\r
+#endif /* __DISKDUMP_H */\r