Fix two more build issues caused by greatlod's d3d header change and ndk bug
authorAlex Ionescu <aionescu@gmail.com>
Thu, 23 Jun 2005 05:07:25 +0000 (05:07 +0000)
committerAlex Ionescu <aionescu@gmail.com>
Thu, 23 Jun 2005 05:07:25 +0000 (05:07 +0000)
svn path=/trunk/; revision=16239

reactos/include/ddk/d3dhal.h
reactos/include/ndk/obtypes.h
reactos/include/ndk/umtypes.h

index d60fda2..9d3fc35 100644 (file)
@@ -26,7 +26,7 @@
 extern "C" {
 #endif
 
 extern "C" {
 #endif
 
-#include <ddrawi.h>
+#include <ddk/ddrawi.h>
 #include <d3d.h>
 
 /*****************************************************************************
 #include <d3d.h>
 
 /*****************************************************************************
index a5eb866..3c8b8c5 100644 (file)
 
 /* DEPENDENCIES **************************************************************/
 
 
 /* DEPENDENCIES **************************************************************/
 
-/* EXPORTED DATA *************************************************************/
-extern NTOSAPI POBJECT_TYPE ObDirectoryType;
-extern NTOSAPI PDEVICE_MAP ObSystemDeviceMap;
-
 /* CONSTANTS *****************************************************************/
 
 /* Values for DosDeviceDriveType */
 /* CONSTANTS *****************************************************************/
 
 /* Values for DosDeviceDriveType */
@@ -46,5 +42,39 @@ typedef struct _OBJECT_BASIC_INFORMATION
 } OBJECT_BASIC_INFORMATION, *POBJECT_BASIC_INFORMATION;
 
 /* FIXME: Add Object Structures Here */
 } OBJECT_BASIC_INFORMATION, *POBJECT_BASIC_INFORMATION;
 
 /* FIXME: Add Object Structures Here */
+/*
+ * FIXME: These will eventually become centerfold in the compliant Ob Manager
+ * For now, they are only here so Device Map is properly defined before the header
+ * changes
+ */
+typedef struct _OBJECT_DIRECTORY_ENTRY
+{
+    struct _OBJECT_DIRECTORY_ENTRY *ChainLink;
+    PVOID Object;
+    ULONG HashValue;
+} OBJECT_DIRECTORY_ENTRY, *POBJECT_DIRECTORY_ENTRY;
+
+#define NUMBER_HASH_BUCKETS 37
+typedef struct _OBJECT_DIRECTORY
+{
+    struct _OBJECT_DIRECTORY_ENTRY *HashBuckets[NUMBER_HASH_BUCKETS];
+    struct _EX_PUSH_LOCK *Lock;
+    struct _DEVICE_MAP *DeviceMap;
+    ULONG SessionId;
+} OBJECT_DIRECTORY, *POBJECT_DIRECTORY;
+
+typedef struct _DEVICE_MAP
+{
+    POBJECT_DIRECTORY   DosDevicesDirectory;
+    POBJECT_DIRECTORY   GlobalDosDevicesDirectory;
+    ULONG               ReferenceCount;
+    ULONG               DriveMap;
+    UCHAR               DriveType[32];
+} DEVICE_MAP, *PDEVICE_MAP; 
+
+/* EXPORTED DATA *************************************************************/
+
+extern NTOSAPI POBJECT_TYPE ObDirectoryType;
+extern NTOSAPI PDEVICE_MAP ObSystemDeviceMap;
 
 #endif
 
 #endif
index 4938d30..0557e47 100644 (file)
 #define FSCTL_PIPE_INTERNAL_READ_OVFLOW \
     CTL_CODE(FILE_DEVICE_NAMED_PIPE, 2048, METHOD_BUFFERED, FILE_READ_DATA)
 
 #define FSCTL_PIPE_INTERNAL_READ_OVFLOW \
     CTL_CODE(FILE_DEVICE_NAMED_PIPE, 2048, METHOD_BUFFERED, FILE_READ_DATA)
 
+/* Macros for current Process/Thread built-in 'special' ID */
+#define NtCurrentProcess() ( (HANDLE)(LONG_PTR) -1 )  
+#define ZwCurrentProcess() NtCurrentProcess()         
+#define NtCurrentThread() ( (HANDLE)(LONG_PTR) -2 )   
+#define ZwCurrentThread() NtCurrentThread()      
+
 /* Kernel Shared Data Constants */
 #define PROCESSOR_FEATURE_MAX 64
 #define SharedUserData ((KUSER_SHARED_DATA * CONST) USER_SHARED_DATA)
 /* Kernel Shared Data Constants */
 #define PROCESSOR_FEATURE_MAX 64
 #define SharedUserData ((KUSER_SHARED_DATA * CONST) USER_SHARED_DATA)