96c3b36b7aef3dfb4a089a4fb4cc81515504363b
[reactos.git] / reactos / drivers / filesystems / udfs / Include / check_env.h
1 ////////////////////////////////////////////////////////////////////
2 // Copyright (C) Alexander Telyatnikov, Ivan Keliukh, Yegor Anchishkin, SKIF Software, 1999-2013. Kiev, Ukraine
3 // All rights reserved
4 ////////////////////////////////////////////////////////////////////
5
6 #ifndef __CHECK_EXECUTION_ENVIRONMENT__H__
7 #define __CHECK_EXECUTION_ENVIRONMENT__H__
8
9 /*
10 // check mode
11 #ifdef NT_KERNEL_MODE
12 #ifdef NT_NATIVE_MODE
13 #error Error cannot combine Kernel and Natime
14 #endif //
15 #endif //NT_KERNEL_MODE
16 #ifdef NT_KERNEL_MODE
17 #if defined(NT_NATIVE_MODE) || defined(WIN_32_MODE)
18 #error !!!! Execution mode definition conflict !!!!
19 #endif //
20 #endif //NT_KERNEL_MODE
21 #ifdef NT_NATIVE_MODE
22 #if defined(WIN_32_MODE)
23 #error !!!! Execution mode definition conflict !!!!
24 #endif //
25 #endif //NT_NATIVE_MODE
26
27 // include appropriate header(s)
28 #ifdef NT_KERNEL_MODE
29
30 #ifdef NT_DEV_DRV_ENV
31 #include <ntddk.h>
32 #endif //NT_DEV_DRV_ENV
33
34 #ifdef NT_FS_DRV_ENV
35 #include <ntifs.h>
36 #endif //NT_DEV_DRV_ENV
37 #include "Include/ntddk_ex.h"
38
39 #ifdef WIN_32_ENV
40 #error Error: Win32 environment is not supported in Kernel Mode
41 #endif //WIN_32_ENV
42
43 #endif //NT_KERNEL_MODE
44
45 #ifdef NT_NATIVE_MODE
46
47 #include "Include/nt_native.h"
48 #ifdef NT_DEV_DRV_ENV
49 #include "LibCdrw/env_spec_cdrw_w32.h"
50 #endif //NT_DEV_DRV_ENV
51
52 #ifdef NT_FS_DRV_ENV
53 #error Error: FS Driver environment is not supported in Native Mode
54 #endif //NT_DEV_DRV_ENV
55
56 #ifdef WIN_32_ENV
57 #endif //WIN_32_ENV
58
59 #endif //NT_NATIVE_MODE
60
61 #ifdef WIN_32_MODE
62
63 #include "windows.h"
64 #ifdef NT_DEV_DRV_ENV
65 #include "LibCdrw/env_spec_cdrw_w32.h"
66 #endif //NT_DEV_DRV_ENV
67
68 #ifdef NT_FS_DRV_ENV
69 #error Error: FS Driver environment is not supported in Win32 Mode
70 #endif //NT_DEV_DRV_ENV
71
72 #ifdef WIN_32_ENV
73 #endif //WIN_32_ENV
74
75 #endif //WIN_32_MODE
76 */
77
78
79 #ifdef NT_INCLUDED
80 #define NT_KERNEL_MODE
81 #endif //NT_INCLUDED
82
83 #ifdef NT_NATIVE_MODE
84 //#define USER_MODE
85 #endif //NT_NATIVE_MODE
86
87 // default to Win32 environment
88 #if (!defined(NT_KERNEL_MODE) && !defined(NT_NATIVE_MODE)) || defined(WIN_32_MODE)
89 //#warning !!!! Execution mode defaulted to WIN_32 !!!!
90 //#define USER_MODE
91 #define WIN_32_MODE
92 #endif
93
94 // check mode
95 #ifdef NT_KERNEL_MODE
96 #if defined(NT_NATIVE_MODE) || defined(WIN_32_MODE)
97 #error !!!! Execution mode definition conflict !!!!
98 #endif //
99 #endif //NT_KERNEL_MODE
100 #ifdef NT_NATIVE_MODE
101 #if defined(WIN_32_MODE)
102 #error !!!! Execution mode definition conflict !!!!
103 #endif //
104 #endif //NT_NATIVE_MODE
105
106
107 #endif //__CHECK_EXECUTION_ENVIRONMENT__H__