Jolt Physics
A multi core friendly Game Physics Engine
Loading...
Searching...
No Matches
ConfigurationString.h
Go to the documentation of this file.
1// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
2// SPDX-FileCopyrightText: 2023 Jorrit Rouwe
3// SPDX-License-Identifier: MIT
4
5#pragma once
6
8
10inline const char *GetConfigurationString()
11{
12 return JPH_IF_SINGLE_PRECISION_ELSE("Single", "Double") " precision "
13#if defined(JPH_CPU_X86)
14 "x86 "
15#elif defined(JPH_CPU_ARM)
16 "ARM "
17#elif defined(JPH_PLATFORM_WASM)
18 "WASM "
19#endif
20#if JPH_CPU_ADDRESS_BITS == 64
21 "64-bit "
22#elif JPH_CPU_ADDRESS_BITS == 32
23 "32-bit "
24#endif
25 "with instructions: "
26#ifdef JPH_USE_NEON
27 "NEON "
28#endif
29#ifdef JPH_USE_SSE
30 "SSE2 "
31#endif
32#ifdef JPH_USE_SSE4_1
33 "SSE4.1 "
34#endif
35#ifdef JPH_USE_SSE4_2
36 "SSE4.2 "
37#endif
38#ifdef JPH_USE_AVX
39 "AVX "
40#endif
41#ifdef JPH_USE_AVX2
42 "AVX2 "
43#endif
44#ifdef JPH_USE_AVX512
45 "AVX512 "
46#endif
47#ifdef JPH_USE_F16C
48 "F16C "
49#endif
50#ifdef JPH_USE_LZCNT
51 "LZCNT "
52#endif
53#ifdef JPH_USE_TZCNT
54 "TZCNT "
55#endif
56#ifdef JPH_USE_FMADD
57 "FMADD "
58#endif
59#ifdef JPH_CROSS_PLATFORM_DETERMINISTIC
60 "(Cross Platform Deterministic) "
61#endif
62#ifdef JPH_FLOATING_POINT_EXCEPTIONS_ENABLED
63 "(FP Exceptions) "
64#endif
65#ifdef JPH_DEBUG_RENDERER
66 "(Debug Renderer) "
67#endif
68#ifdef JPH_PROFILE_ENABLED
69 "(Profile) "
70#endif
71#if defined(JPH_OBJECT_LAYER_BITS) && JPH_OBJECT_LAYER_BITS == 32
72 "(32-bit ObjectLayer) "
73#else
74 "(16-bit ObjectLayer) "
75#endif
76#ifdef JPH_ENABLE_ASSERTS
77 "(Assertions) "
78#endif
79#ifdef JPH_OBJECT_STREAM
80 "(ObjectStream) "
81#endif
82#ifdef JPH_DEBUG
83 "(Debug) "
84#endif
85#if defined(__cpp_rtti) && __cpp_rtti
86 "(C++ RTTI) "
87#endif
88#if defined(__cpp_exceptions) && __cpp_exceptions
89 "(C++ Exceptions) "
90#endif
91 ;
92}
93
JPH_NAMESPACE_BEGIN const char * GetConfigurationString()
Construct a string that lists the most important configuration settings.
Definition: ConfigurationString.h:10
#define JPH_NAMESPACE_END
Definition: Core.h:378
#define JPH_IF_SINGLE_PRECISION_ELSE(s, d)
Definition: Core.h:530
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372