xref: /aosp_15_r20/external/vulkan-headers/include/vulkan/vulkan_hpp_macros.hpp (revision 902771965e4c6d39c75c62130a6a330c08b024db)
1*90277196SAndroid Build Coastguard Worker // Copyright 2015-2024 The Khronos Group Inc.
2*90277196SAndroid Build Coastguard Worker //
3*90277196SAndroid Build Coastguard Worker // SPDX-License-Identifier: Apache-2.0 OR MIT
4*90277196SAndroid Build Coastguard Worker //
5*90277196SAndroid Build Coastguard Worker 
6*90277196SAndroid Build Coastguard Worker // This header is generated from the Khronos Vulkan XML API Registry.
7*90277196SAndroid Build Coastguard Worker 
8*90277196SAndroid Build Coastguard Worker #ifndef VULKAN_HPP_MACROS_HPP
9*90277196SAndroid Build Coastguard Worker #define VULKAN_HPP_MACROS_HPP
10*90277196SAndroid Build Coastguard Worker 
11*90277196SAndroid Build Coastguard Worker #if defined( _MSVC_LANG )
12*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPLUSPLUS _MSVC_LANG
13*90277196SAndroid Build Coastguard Worker #else
14*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPLUSPLUS __cplusplus
15*90277196SAndroid Build Coastguard Worker #endif
16*90277196SAndroid Build Coastguard Worker 
17*90277196SAndroid Build Coastguard Worker #if 202002L < VULKAN_HPP_CPLUSPLUS
18*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPP_VERSION 23
19*90277196SAndroid Build Coastguard Worker #elif 201703L < VULKAN_HPP_CPLUSPLUS
20*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPP_VERSION 20
21*90277196SAndroid Build Coastguard Worker #elif 201402L < VULKAN_HPP_CPLUSPLUS
22*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPP_VERSION 17
23*90277196SAndroid Build Coastguard Worker #elif 201103L < VULKAN_HPP_CPLUSPLUS
24*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPP_VERSION 14
25*90277196SAndroid Build Coastguard Worker #elif 199711L < VULKAN_HPP_CPLUSPLUS
26*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CPP_VERSION 11
27*90277196SAndroid Build Coastguard Worker #else
28*90277196SAndroid Build Coastguard Worker #  error "vulkan.hpp needs at least c++ standard version 11"
29*90277196SAndroid Build Coastguard Worker #endif
30*90277196SAndroid Build Coastguard Worker 
31*90277196SAndroid Build Coastguard Worker // include headers holding feature-test macros
32*90277196SAndroid Build Coastguard Worker #if 20 <= VULKAN_HPP_CPP_VERSION
33*90277196SAndroid Build Coastguard Worker #  include <version>
34*90277196SAndroid Build Coastguard Worker #else
35*90277196SAndroid Build Coastguard Worker #  include <ciso646>
36*90277196SAndroid Build Coastguard Worker #endif
37*90277196SAndroid Build Coastguard Worker 
38*90277196SAndroid Build Coastguard Worker #if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
39*90277196SAndroid Build Coastguard Worker #  if !defined( VULKAN_HPP_NO_SMART_HANDLE )
40*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NO_SMART_HANDLE
41*90277196SAndroid Build Coastguard Worker #  endif
42*90277196SAndroid Build Coastguard Worker #endif
43*90277196SAndroid Build Coastguard Worker 
44*90277196SAndroid Build Coastguard Worker #if defined( VULKAN_HPP_NO_CONSTRUCTORS )
45*90277196SAndroid Build Coastguard Worker #  if !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS )
46*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NO_STRUCT_CONSTRUCTORS
47*90277196SAndroid Build Coastguard Worker #  endif
48*90277196SAndroid Build Coastguard Worker #  if !defined( VULKAN_HPP_NO_UNION_CONSTRUCTORS )
49*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NO_UNION_CONSTRUCTORS
50*90277196SAndroid Build Coastguard Worker #  endif
51*90277196SAndroid Build Coastguard Worker #endif
52*90277196SAndroid Build Coastguard Worker 
53*90277196SAndroid Build Coastguard Worker #if defined( VULKAN_HPP_NO_SETTERS )
54*90277196SAndroid Build Coastguard Worker #  if !defined( VULKAN_HPP_NO_STRUCT_SETTERS )
55*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NO_STRUCT_SETTERS
56*90277196SAndroid Build Coastguard Worker #  endif
57*90277196SAndroid Build Coastguard Worker #  if !defined( VULKAN_HPP_NO_UNION_SETTERS )
58*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NO_UNION_SETTERS
59*90277196SAndroid Build Coastguard Worker #  endif
60*90277196SAndroid Build Coastguard Worker #endif
61*90277196SAndroid Build Coastguard Worker 
62*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_ASSERT )
63*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_ASSERT assert
64*90277196SAndroid Build Coastguard Worker #endif
65*90277196SAndroid Build Coastguard Worker 
66*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_ASSERT_ON_RESULT )
67*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_ASSERT_ON_RESULT VULKAN_HPP_ASSERT
68*90277196SAndroid Build Coastguard Worker #endif
69*90277196SAndroid Build Coastguard Worker 
70*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_STATIC_ASSERT )
71*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_STATIC_ASSERT static_assert
72*90277196SAndroid Build Coastguard Worker #endif
73*90277196SAndroid Build Coastguard Worker 
74*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL )
75*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 1
76*90277196SAndroid Build Coastguard Worker #endif
77*90277196SAndroid Build Coastguard Worker 
78*90277196SAndroid Build Coastguard Worker #if !defined( __has_include )
79*90277196SAndroid Build Coastguard Worker #  define __has_include( x ) false
80*90277196SAndroid Build Coastguard Worker #endif
81*90277196SAndroid Build Coastguard Worker 
82*90277196SAndroid Build Coastguard Worker #if ( 201907 <= __cpp_lib_three_way_comparison ) && __has_include( <compare> ) && !defined( VULKAN_HPP_NO_SPACESHIP_OPERATOR )
83*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_HAS_SPACESHIP_OPERATOR
84*90277196SAndroid Build Coastguard Worker #endif
85*90277196SAndroid Build Coastguard Worker 
86*90277196SAndroid Build Coastguard Worker #if ( 201803 <= __cpp_lib_span )
87*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_SUPPORT_SPAN
88*90277196SAndroid Build Coastguard Worker #endif
89*90277196SAndroid Build Coastguard Worker 
90*90277196SAndroid Build Coastguard Worker #if defined( __cpp_lib_modules ) && !defined( VULKAN_HPP_STD_MODULE ) && defined( VULKAN_HPP_ENABLE_STD_MODULE )
91*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_STD_MODULE std.compat
92*90277196SAndroid Build Coastguard Worker #endif
93*90277196SAndroid Build Coastguard Worker 
94*90277196SAndroid Build Coastguard Worker #ifndef VK_USE_64_BIT_PTR_DEFINES
95*90277196SAndroid Build Coastguard Worker #  if defined( __LP64__ ) || defined( _WIN64 ) || ( defined( __x86_64__ ) && !defined( __ILP32__ ) ) || defined( _M_X64 ) || defined( __ia64 ) || \
96*90277196SAndroid Build Coastguard Worker     defined( _M_IA64 ) || defined( __aarch64__ ) || defined( __powerpc64__ ) || ( defined( __riscv ) && __riscv_xlen == 64 )
97*90277196SAndroid Build Coastguard Worker #    define VK_USE_64_BIT_PTR_DEFINES 1
98*90277196SAndroid Build Coastguard Worker #  else
99*90277196SAndroid Build Coastguard Worker #    define VK_USE_64_BIT_PTR_DEFINES 0
100*90277196SAndroid Build Coastguard Worker #  endif
101*90277196SAndroid Build Coastguard Worker #endif
102*90277196SAndroid Build Coastguard Worker 
103*90277196SAndroid Build Coastguard Worker // 32-bit vulkan is not typesafe for non-dispatchable handles, so don't allow copy constructors on this platform by default.
104*90277196SAndroid Build Coastguard Worker // To enable this feature on 32-bit platforms please #define VULKAN_HPP_TYPESAFE_CONVERSION 1
105*90277196SAndroid Build Coastguard Worker // To disable this feature on 64-bit platforms please #define VULKAN_HPP_TYPESAFE_CONVERSION 0
106*90277196SAndroid Build Coastguard Worker #if ( VK_USE_64_BIT_PTR_DEFINES == 1 )
107*90277196SAndroid Build Coastguard Worker #  if !defined( VULKAN_HPP_TYPESAFE_CONVERSION )
108*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_TYPESAFE_CONVERSION 1
109*90277196SAndroid Build Coastguard Worker #  endif
110*90277196SAndroid Build Coastguard Worker #endif
111*90277196SAndroid Build Coastguard Worker 
112*90277196SAndroid Build Coastguard Worker #if defined( __GNUC__ )
113*90277196SAndroid Build Coastguard Worker #  define GCC_VERSION ( __GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__ )
114*90277196SAndroid Build Coastguard Worker #endif
115*90277196SAndroid Build Coastguard Worker 
116*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_HAS_UNRESTRICTED_UNIONS )
117*90277196SAndroid Build Coastguard Worker #  if defined( __clang__ )
118*90277196SAndroid Build Coastguard Worker #    if __has_feature( cxx_unrestricted_unions )
119*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
120*90277196SAndroid Build Coastguard Worker #    endif
121*90277196SAndroid Build Coastguard Worker #  elif defined( __GNUC__ )
122*90277196SAndroid Build Coastguard Worker #    if 40600 <= GCC_VERSION
123*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
124*90277196SAndroid Build Coastguard Worker #    endif
125*90277196SAndroid Build Coastguard Worker #  elif defined( _MSC_VER )
126*90277196SAndroid Build Coastguard Worker #    if 1900 <= _MSC_VER
127*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS
128*90277196SAndroid Build Coastguard Worker #    endif
129*90277196SAndroid Build Coastguard Worker #  endif
130*90277196SAndroid Build Coastguard Worker #endif
131*90277196SAndroid Build Coastguard Worker 
132*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_INLINE )
133*90277196SAndroid Build Coastguard Worker #  if defined( __clang__ )
134*90277196SAndroid Build Coastguard Worker #    if __has_attribute( always_inline )
135*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_INLINE __attribute__( ( always_inline ) ) __inline__
136*90277196SAndroid Build Coastguard Worker #    else
137*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_INLINE inline
138*90277196SAndroid Build Coastguard Worker #    endif
139*90277196SAndroid Build Coastguard Worker #  elif defined( __GNUC__ )
140*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_INLINE __attribute__( ( always_inline ) ) __inline__
141*90277196SAndroid Build Coastguard Worker #  elif defined( _MSC_VER )
142*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_INLINE inline
143*90277196SAndroid Build Coastguard Worker #  else
144*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_INLINE inline
145*90277196SAndroid Build Coastguard Worker #  endif
146*90277196SAndroid Build Coastguard Worker #endif
147*90277196SAndroid Build Coastguard Worker 
148*90277196SAndroid Build Coastguard Worker #if ( VULKAN_HPP_TYPESAFE_CONVERSION == 1 )
149*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_TYPESAFE_EXPLICIT
150*90277196SAndroid Build Coastguard Worker #else
151*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_TYPESAFE_EXPLICIT explicit
152*90277196SAndroid Build Coastguard Worker #endif
153*90277196SAndroid Build Coastguard Worker 
154*90277196SAndroid Build Coastguard Worker #if defined( __cpp_constexpr )
155*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CONSTEXPR constexpr
156*90277196SAndroid Build Coastguard Worker #  if 201304 <= __cpp_constexpr
157*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_CONSTEXPR_14 constexpr
158*90277196SAndroid Build Coastguard Worker #  else
159*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_CONSTEXPR_14
160*90277196SAndroid Build Coastguard Worker #  endif
161*90277196SAndroid Build Coastguard Worker #  if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 110400 < GCC_VERSION ) )
162*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_CONSTEXPR_20 constexpr
163*90277196SAndroid Build Coastguard Worker #  else
164*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_CONSTEXPR_20
165*90277196SAndroid Build Coastguard Worker #  endif
166*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CONST_OR_CONSTEXPR constexpr
167*90277196SAndroid Build Coastguard Worker #else
168*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CONSTEXPR
169*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CONSTEXPR_14
170*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_CONST_OR_CONSTEXPR const
171*90277196SAndroid Build Coastguard Worker #endif
172*90277196SAndroid Build Coastguard Worker 
173*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_CONSTEXPR_INLINE )
174*90277196SAndroid Build Coastguard Worker #  if 201606L <= __cpp_inline_variables
175*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_CONSTEXPR_INLINE VULKAN_HPP_CONSTEXPR inline
176*90277196SAndroid Build Coastguard Worker #  else
177*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_CONSTEXPR_INLINE VULKAN_HPP_CONSTEXPR
178*90277196SAndroid Build Coastguard Worker #  endif
179*90277196SAndroid Build Coastguard Worker #endif
180*90277196SAndroid Build Coastguard Worker 
181*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_NOEXCEPT )
182*90277196SAndroid Build Coastguard Worker #  if defined( _MSC_VER ) && ( _MSC_VER <= 1800 )
183*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NOEXCEPT
184*90277196SAndroid Build Coastguard Worker #  else
185*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NOEXCEPT     noexcept
186*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_HAS_NOEXCEPT 1
187*90277196SAndroid Build Coastguard Worker #    if defined( VULKAN_HPP_NO_EXCEPTIONS )
188*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS noexcept
189*90277196SAndroid Build Coastguard Worker #    else
190*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_NOEXCEPT_WHEN_NO_EXCEPTIONS
191*90277196SAndroid Build Coastguard Worker #    endif
192*90277196SAndroid Build Coastguard Worker #  endif
193*90277196SAndroid Build Coastguard Worker #endif
194*90277196SAndroid Build Coastguard Worker 
195*90277196SAndroid Build Coastguard Worker #if 14 <= VULKAN_HPP_CPP_VERSION
196*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEPRECATED( msg ) [[deprecated( msg )]]
197*90277196SAndroid Build Coastguard Worker #else
198*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEPRECATED( msg )
199*90277196SAndroid Build Coastguard Worker #endif
200*90277196SAndroid Build Coastguard Worker 
201*90277196SAndroid Build Coastguard Worker #if 17 <= VULKAN_HPP_CPP_VERSION
202*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEPRECATED_17( msg ) [[deprecated( msg )]]
203*90277196SAndroid Build Coastguard Worker #else
204*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEPRECATED_17( msg )
205*90277196SAndroid Build Coastguard Worker #endif
206*90277196SAndroid Build Coastguard Worker 
207*90277196SAndroid Build Coastguard Worker #if ( 17 <= VULKAN_HPP_CPP_VERSION ) && !defined( VULKAN_HPP_NO_NODISCARD_WARNINGS )
208*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_NODISCARD [[nodiscard]]
209*90277196SAndroid Build Coastguard Worker #  if defined( VULKAN_HPP_NO_EXCEPTIONS )
210*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS [[nodiscard]]
211*90277196SAndroid Build Coastguard Worker #  else
212*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
213*90277196SAndroid Build Coastguard Worker #  endif
214*90277196SAndroid Build Coastguard Worker #else
215*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_NODISCARD
216*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
217*90277196SAndroid Build Coastguard Worker #endif
218*90277196SAndroid Build Coastguard Worker 
219*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_NAMESPACE )
220*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_NAMESPACE vk
221*90277196SAndroid Build Coastguard Worker #endif
222*90277196SAndroid Build Coastguard Worker 
223*90277196SAndroid Build Coastguard Worker #define VULKAN_HPP_STRINGIFY2( text ) #text
224*90277196SAndroid Build Coastguard Worker #define VULKAN_HPP_STRINGIFY( text )  VULKAN_HPP_STRINGIFY2( text )
225*90277196SAndroid Build Coastguard Worker #define VULKAN_HPP_NAMESPACE_STRING   VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE )
226*90277196SAndroid Build Coastguard Worker 
227*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC )
228*90277196SAndroid Build Coastguard Worker #  if defined( VK_NO_PROTOTYPES )
229*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1
230*90277196SAndroid Build Coastguard Worker #  else
231*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 0
232*90277196SAndroid Build Coastguard Worker #  endif
233*90277196SAndroid Build Coastguard Worker #endif
234*90277196SAndroid Build Coastguard Worker 
235*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_STORAGE_API )
236*90277196SAndroid Build Coastguard Worker #  if defined( VULKAN_HPP_STORAGE_SHARED )
237*90277196SAndroid Build Coastguard Worker #    if defined( _MSC_VER )
238*90277196SAndroid Build Coastguard Worker #      if defined( VULKAN_HPP_STORAGE_SHARED_EXPORT )
239*90277196SAndroid Build Coastguard Worker #        define VULKAN_HPP_STORAGE_API __declspec( dllexport )
240*90277196SAndroid Build Coastguard Worker #      else
241*90277196SAndroid Build Coastguard Worker #        define VULKAN_HPP_STORAGE_API __declspec( dllimport )
242*90277196SAndroid Build Coastguard Worker #      endif
243*90277196SAndroid Build Coastguard Worker #    elif defined( __clang__ ) || defined( __GNUC__ )
244*90277196SAndroid Build Coastguard Worker #      if defined( VULKAN_HPP_STORAGE_SHARED_EXPORT )
245*90277196SAndroid Build Coastguard Worker #        define VULKAN_HPP_STORAGE_API __attribute__( ( visibility( "default" ) ) )
246*90277196SAndroid Build Coastguard Worker #      else
247*90277196SAndroid Build Coastguard Worker #        define VULKAN_HPP_STORAGE_API
248*90277196SAndroid Build Coastguard Worker #      endif
249*90277196SAndroid Build Coastguard Worker #    else
250*90277196SAndroid Build Coastguard Worker #      define VULKAN_HPP_STORAGE_API
251*90277196SAndroid Build Coastguard Worker #      pragma warning Unknown import / export semantics
252*90277196SAndroid Build Coastguard Worker #    endif
253*90277196SAndroid Build Coastguard Worker #  else
254*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_STORAGE_API
255*90277196SAndroid Build Coastguard Worker #  endif
256*90277196SAndroid Build Coastguard Worker #endif
257*90277196SAndroid Build Coastguard Worker 
258*90277196SAndroid Build Coastguard Worker namespace VULKAN_HPP_NAMESPACE
259*90277196SAndroid Build Coastguard Worker {
260*90277196SAndroid Build Coastguard Worker   class DispatchLoaderDynamic;
261*90277196SAndroid Build Coastguard Worker }  // namespace VULKAN_HPP_NAMESPACE
262*90277196SAndroid Build Coastguard Worker 
263*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_DEFAULT_DISPATCHER )
264*90277196SAndroid Build Coastguard Worker #  if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
265*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::defaultDispatchLoaderDynamic
266*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE                                             \
267*90277196SAndroid Build Coastguard Worker       namespace VULKAN_HPP_NAMESPACE                                                                       \
268*90277196SAndroid Build Coastguard Worker       {                                                                                                    \
269*90277196SAndroid Build Coastguard Worker         VULKAN_HPP_STORAGE_API ::VULKAN_HPP_NAMESPACE::DispatchLoaderDynamic defaultDispatchLoaderDynamic; \
270*90277196SAndroid Build Coastguard Worker       }
271*90277196SAndroid Build Coastguard Worker 
272*90277196SAndroid Build Coastguard Worker namespace VULKAN_HPP_NAMESPACE
273*90277196SAndroid Build Coastguard Worker {
274*90277196SAndroid Build Coastguard Worker   extern VULKAN_HPP_STORAGE_API VULKAN_HPP_NAMESPACE::DispatchLoaderDynamic defaultDispatchLoaderDynamic;
275*90277196SAndroid Build Coastguard Worker }  // namespace VULKAN_HPP_NAMESPACE
276*90277196SAndroid Build Coastguard Worker #  else
277*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::getDispatchLoaderStatic()
278*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE
279*90277196SAndroid Build Coastguard Worker #  endif
280*90277196SAndroid Build Coastguard Worker #endif
281*90277196SAndroid Build Coastguard Worker 
282*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_DEFAULT_DISPATCHER_TYPE )
283*90277196SAndroid Build Coastguard Worker #  if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
284*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderDynamic
285*90277196SAndroid Build Coastguard Worker #  else
286*90277196SAndroid Build Coastguard Worker #    define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::DispatchLoaderStatic
287*90277196SAndroid Build Coastguard Worker #  endif
288*90277196SAndroid Build Coastguard Worker #endif
289*90277196SAndroid Build Coastguard Worker 
290*90277196SAndroid Build Coastguard Worker #if defined( VULKAN_HPP_NO_DEFAULT_DISPATCHER )
291*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT
292*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT
293*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT
294*90277196SAndroid Build Coastguard Worker #else
295*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT         = {}
296*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT = nullptr
297*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT       = VULKAN_HPP_DEFAULT_DISPATCHER
298*90277196SAndroid Build Coastguard Worker #endif
299*90277196SAndroid Build Coastguard Worker 
300*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_EXPECTED ) && ( 23 <= VULKAN_HPP_CPP_VERSION ) && defined( __cpp_lib_expected )
301*90277196SAndroid Build Coastguard Worker #  if !( defined( VULKAN_HPP_ENABLE_STD_MODULE ) && defined( VULKAN_HPP_STD_MODULE ) )
302*90277196SAndroid Build Coastguard Worker #    include <expected>
303*90277196SAndroid Build Coastguard Worker #  endif
304*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_EXPECTED   std::expected
305*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_UNEXPECTED std::unexpected
306*90277196SAndroid Build Coastguard Worker #endif
307*90277196SAndroid Build Coastguard Worker 
308*90277196SAndroid Build Coastguard Worker #if !defined( VULKAN_HPP_RAII_NAMESPACE )
309*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_RAII_NAMESPACE raii
310*90277196SAndroid Build Coastguard Worker #endif
311*90277196SAndroid Build Coastguard Worker 
312*90277196SAndroid Build Coastguard Worker #if defined( VULKAN_HPP_NO_EXCEPTIONS ) && defined( VULKAN_HPP_EXPECTED )
313*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_RAII_NO_EXCEPTIONS
314*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_RAII_CREATE_NOEXCEPT noexcept
315*90277196SAndroid Build Coastguard Worker #else
316*90277196SAndroid Build Coastguard Worker #  define VULKAN_HPP_RAII_CREATE_NOEXCEPT
317*90277196SAndroid Build Coastguard Worker #endif
318*90277196SAndroid Build Coastguard Worker 
319*90277196SAndroid Build Coastguard Worker #endif