Medical Imaging Interaction Toolkit  2024.06.99-60d9b802
Medical Imaging Interaction Toolkit
usGlobalConfig.h
Go to the documentation of this file.
1 /*
2  USCONFIG.h
3  this file is generated. Do not change!
4 */
5 
6 #ifndef USGLOBALCONFIG_H
7 #define USGLOBALCONFIG_H
8 
9 #define US_BUILD_SHARED_LIBS
10 #define US_ENABLE_THREADING_SUPPORT
11 /* #undef US_GCC_RTTI_WORKAROUND_NEEDED */
12 #define US_HAVE_VISIBILITY_ATTRIBUTE
13 
14 //-------------------------------------------------------------------
15 // Header Availability
16 //-------------------------------------------------------------------
17 
18 #define US_HAVE_CXXABI_H
19 #define US_HAVE_STDINT_H
20 #define US_HAVE_TR1_UNORDERED_MAP_H
21 #define US_HAVE_TR1_UNORDERED_SET_H
22 #define US_HAVE_TR1_FUNCTIONAL_H
23 #define US_HAVE_UNORDERED_MAP_H
24 #define US_HAVE_UNORDERED_SET_H
25 #define US_HAVE_FUNCTIONAL_H
26 
27 /* #undef US_HAVE_TR1_UNORDERED_MAP */
28 /* #undef US_HAVE_TR1_UNORDERED_SET */
29 /* #undef US_HAVE_TR1_FUNCTION */
30 #define US_HAVE_STD_UNORDERED_MAP
31 #define US_HAVE_STD_UNORDERED_SET
32 #define US_HAVE_STD_FUNCTION
33 
34 /* #undef US_HAVE_TR1_HASH */
35 /* #undef US_HAVE_TR1_HASH_STRUCT */
36 /* #undef US_HAVE_TR1_HASH_CLASS */
37 #define US_HAVE_STD_HASH
38 #define US_HAVE_STD_HASH_STRUCT
39 #define US_HAVE_STD_HASH_CLASS
40 
42 // Version information
43 //-------------------------------------------------------------------
44 
45 #define CppMicroServices_MAJOR_VERSION 2
46 #define CppMicroServices_MINOR_VERSION 99
47 #define CppMicroServices_PATCH_VERSION 0
48 #define CppMicroServices_VERSION 2.99.0
49 #define CppMicroServices_VERSION_STR "2.99.0"
50 
51 #define US_MAJOR_VERSION 2
52 #define US_MINOR_VERSION 99
53 #define US_PATCH_VERSION 0
54 #define US_VERSION 2.99.0
55 #define US_VERSION_STR "2.99.0"
56 
57 //-------------------------------------------------------------------
58 // Namespace customization
59 //-------------------------------------------------------------------
60 
61 #define US_NAMESPACE us
62 
63 #ifndef US_NAMESPACE /* user namespace */
64 
65  # define US_PREPEND_NAMESPACE(name) ::name
66  # define US_USE_NAMESPACE
67  # define US_BEGIN_NAMESPACE
68  # define US_END_NAMESPACE
69  # define US_FORWARD_DECLARE_CLASS(name) class name;
70  # define US_FORWARD_DECLARE_STRUCT(name) struct name;
71 
72 #else /* user namespace */
73 
74  # define US_PREPEND_NAMESPACE(name) ::US_NAMESPACE::name
75  # define US_USE_NAMESPACE using namespace ::US_NAMESPACE;
76  # define US_BEGIN_NAMESPACE namespace US_NAMESPACE {
77  # define US_END_NAMESPACE }
78  # define US_FORWARD_DECLARE_CLASS(name) \
79  US_BEGIN_NAMESPACE class name; US_END_NAMESPACE
80 
81  # define US_FORWARD_DECLARE_STRUCT(name) \
82  US_BEGIN_NAMESPACE struct name; US_END_NAMESPACE
83 
84  namespace US_NAMESPACE {}
85 
86 #endif /* user namespace */
87 
88 //-------------------------------------------------------------------
89 // Platform defines
90 //-------------------------------------------------------------------
91 
92 #if defined(__APPLE__)
93  #define US_PLATFORM_APPLE
94 #endif
95 
96 #if defined(__linux__)
97  #define US_PLATFORM_LINUX
98 #endif
99 
100 #if defined(_WIN32) || defined(_WIN64)
101  #define US_PLATFORM_WINDOWS
102 #else
103  #define US_PLATFORM_POSIX
104 #endif
105 
107 // Macros for import/export declarations
108 //-------------------------------------------------------------------
109 
110 #if defined(US_PLATFORM_WINDOWS)
111  #define US_ABI_EXPORT __declspec(dllexport)
112  #define US_ABI_IMPORT __declspec(dllimport)
113  #define US_ABI_LOCAL
114 #elif defined(US_HAVE_VISIBILITY_ATTRIBUTE)
115  #define US_ABI_EXPORT __attribute__ ((visibility ("default")))
116  #define US_ABI_IMPORT __attribute__ ((visibility ("default")))
117  #define US_ABI_LOCAL __attribute__ ((visibility ("hidden")))
118 #else
119  #define US_ABI_EXPORT
120  #define US_ABI_IMPORT
121  #define US_ABI_LOCAL
122 #endif
123 
124 //-------------------------------------------------------------------
125 // Macros for suppressing warnings
126 //-------------------------------------------------------------------
127 
128 #ifdef _MSC_VER
129 #define US_MSVC_PUSH_DISABLE_WARNING(wn) \
130 __pragma(warning(push)) \
131 __pragma(warning(disable:wn))
132 #define US_MSVC_POP_WARNING \
133 __pragma(warning(pop))
134 #define US_MSVC_DISABLE_WARNING(wn) \
135 __pragma(warning(disable:wn))
136 #else
137 #define US_MSVC_PUSH_DISABLE_WARNING(wn)
138 #define US_MSVC_POP_WARNING
139 #define US_MSVC_DISABLE_WARNING(wn)
140 #endif
141 
142 // Do not warn about the usage of deprecated unsafe functions
144 
145 // Mark a variable or expression result as unused
146 #define US_UNUSED(x) (void)(x)
147 
148 
149 //-------------------------------------------------------------------
150 // Hash Container
151 //-------------------------------------------------------------------
152 
153 #ifdef US_HAVE_UNORDERED_MAP_H
154  #include <unordered_map>
155 #elif defined(US_HAVE_TR1_UNORDERED_MAP_H)
156  #include <tr1/unordered_map>
157 #endif
158 
159 #ifdef US_HAVE_UNORDERED_SET_H
160  #include <unordered_set>
161 #elif defined(US_HAVE_TR1_UNORDERED_SET_H)
162  #include <tr1/unordered_set>
163 #endif
164 
165 #ifdef US_HAVE_STD_UNORDERED_MAP
166  #define US_UNORDERED_MAP_TYPE ::std::unordered_map
167 #elif defined(US_HAVE_TR1_UNORDERED_MAP)
168  #define US_UNORDERED_MAP_TYPE ::std::tr1::unordered_map
169 #endif
170 
171 #ifdef US_HAVE_STD_UNORDERED_SET
172  #define US_UNORDERED_SET_TYPE ::std::unordered_set
173 #elif defined(US_HAVE_TR1_UNORDERED_SET)
174  #define US_UNORDERED_SET_TYPE ::std::tr1::unordered_set
175 #endif
176 
177 #ifdef US_HAVE_STD_HASH
178  #define US_HASH_FUNCTION_NAMESPACE ::std
179  #ifdef US_HAVE_STD_HASH_STRUCT
180  #define US_HASH_FUNCTION_FRIEND(type) friend struct ::std::hash<type>
181  #elif defined(US_HAVE_STD_HASH_CLASS)
182  #define US_HASH_FUNCTION_FRIEND(type) friend class ::std::hash<type>
183  #endif
184  #define US_HASH_FUNCTION_NAMESPACE_BEGIN namespace std {
185  #define US_HASH_FUNCTION_NAMESPACE_END }
186 #elif defined(US_HAVE_TR1_HASH)
187  #define US_HASH_FUNCTION_NAMESPACE ::std::tr1
188  #ifdef US_HAVE_TR1_HASH_STRUCT
189  #define US_HASH_FUNCTION_FRIEND(type) friend struct ::std::tr1::hash<type>
190  #elif defined(US_HAVE_TR1_HASH_CLASS)
191  #define US_HASH_FUNCTION_FRIEND(type) friend class ::std::tr1::hash<type>
192  #endif
193  #define US_HASH_FUNCTION_NAMESPACE_BEGIN namespace std { namespace tr1 {
194  #define US_HASH_FUNCTION_NAMESPACE_END }}
195 #endif
196 
197 #define US_HASH_FUNCTION_BEGIN(type) \
198 template<> \
199 struct hash<type> { \
200 std::size_t operator()(const type& arg) const {
201 
202 #define US_HASH_FUNCTION_END } };
203 
204 #define US_HASH_FUNCTION(type, arg) hash<type>()(arg)
205 
206 #endif // USGLOBALCONFIG_H
US_NAMESPACE
#define US_NAMESPACE
Definition: usGlobalConfig.h:61
US_MSVC_DISABLE_WARNING
#define US_MSVC_DISABLE_WARNING(wn)
Definition: usGlobalConfig.h:139