Plasma Engine  2.0
Loading...
Searching...
No Matches
CheckDefinitions.h
1#pragma once
2
3#ifdef BUILDSYSTEM_BUILDING_FOUNDATION_LIB
4# if BUILDSYSTEM_COMPILE_ENGINE_AS_DLL && PL_DISABLED(PL_COMPILE_ENGINE_AS_DLL)
5# error "The Buildsystem is configured to build the Engine as a shared library, but PL_COMPILE_ENGINE_AS_DLL is not defined in UserConfig.h"
6# endif
7# if !BUILDSYSTEM_COMPILE_ENGINE_AS_DLL && PL_ENABLED(PL_COMPILE_ENGINE_AS_DLL)
8# error "The Buildsystem is configured to build the Engine as a static library, but PL_COMPILE_ENGINE_AS_DLL is defined in UserConfig.h"
9# endif
10#endif
11
12#ifndef NULL
13# error "NULL is not defined."
14#endif
15
16#ifndef PL_FORCE_INLINE
17# error "PL_FORCE_INLINE is not defined."
18#endif
19
20#ifndef PL_ALWAYS_INLINE
21# error "PL_ALWAYS_INLINE is not defined."
22#endif
23
24#ifndef PL_ALIGNMENT_OF
25# error "PL_ALIGNMENT_OF is not defined."
26#endif
27
28#if PL_IS_NOT_EXCLUSIVE(PL_PLATFORM_32BIT, PL_PLATFORM_64BIT)
29# error "Platform is not defined as 32 Bit or 64 Bit"
30#endif
31
32#ifndef PL_DEBUG_BREAK
33# error "PL_DEBUG_BREAK is not defined."
34#endif
35
36#ifndef PL_SOURCE_FUNCTION
37# error "PL_SOURCE_FUNCTION is not defined."
38#endif
39
40#ifndef PL_SOURCE_FILE
41# error "PL_SOURCE_FILE is not defined."
42#endif
43
44#ifndef PL_SOURCE_LINE
45# error "PL_SOURCE_LINE is not defined."
46#endif
47
48#if PL_IS_NOT_EXCLUSIVE(PL_PLATFORM_LITTLE_ENDIAN, PL_PLATFORM_BIG_ENDIAN)
49# error "Endianess is not correctly defined."
50#endif
51
52#ifndef PL_MATH_CHECK_FOR_NAN
53# error "PL_MATH_CHECK_FOR_NAN is not defined."
54#endif
55
56#if PL_IS_NOT_EXCLUSIVE(PL_PLATFORM_ARCH_X86, PL_PLATFORM_ARCH_ARM)
57# error "Platform architecture is not correctly defined."
58#endif
59
60#if !defined(PL_SIMD_IMPLEMENTATION) || (PL_SIMD_IMPLEMENTATION == 0)
61# error "PL_SIMD_IMPLEMENTATION is not correctly defined."
62#endif