update for HEAD-2003091401
[reactos.git] / include / napi / core.h
index ca13d20..8548bb0 100644 (file)
@@ -2,9 +2,12 @@
 #define __INCLUDE_NAPI_CORE_H
 
 #include "../ntoskrnl/include/internal/ke.h"
+#include <ddk/ntddscsi.h>
 
 #define MM_CORE_DUMP_HEADER_MAGIC         (0xdeafbead)
 #define MM_CORE_DUMP_HEADER_VERSION       (0x1)
+
+#define MM_CORE_DUMP_TYPE_NONE            (0x0)
 #define MM_CORE_DUMP_TYPE_MINIMAL         (0x1)
 #define MM_CORE_DUMP_TYPE_FULL            (0x2)
 
@@ -21,15 +24,12 @@ typedef struct _MM_CORE_DUMP_HEADER
   ULONG PhysicalMemorySize;
 } MM_CORE_DUMP_HEADER, *PMM_CORE_DUMP_HEADER;
 
-typedef struct _MM_DUMP_POINTERS
+typedef struct MM_CORE_DUMP_FUNCTIONS
 {
-  PVOID Context;
-  NTSTATUS (*DeviceInit)(PVOID Context);
-  NTSTATUS (*DeviceWrite)(PVOID Context, ULONG Block, PMDL Mdl);
-  NTSTATUS (*DeviceFinish)(PVOID Context);
-} MM_DUMP_POINTERS, *PMM_DUMP_POINTERS;
-
-#define FSCTL_GET_DUMP_BLOCK_MAP                     (('R' << 24) | 0xF1)
-#define IOCTL_GET_DUMP_POINTERS                      (('R' << 24) | 0xF2)
+  NTSTATUS STDCALL (*DumpPrepare)(PDEVICE_OBJECT DeviceObject, PDUMP_POINTERS DumpPointers);
+  NTSTATUS STDCALL (*DumpInit)(VOID);
+  NTSTATUS STDCALL (*DumpWrite)(LARGE_INTEGER Address, PMDL Mdl);
+  NTSTATUS STDCALL (*DumpFinish)(VOID);
+} MM_CORE_DUMP_FUNCTIONS, *PMM_CORE_DUMP_FUNCTIONS;
 
 #endif /* __INCLUDE_NAPI_CORE_H */