Jolt Physics
A multi core friendly Game Physics Engine
Loading...
Searching...
No Matches
Core.h File Reference
#include <winapifamily.h>
#include <float.h>
#include <limits.h>
#include <string.h>
#include <vector>
#include <utility>
#include <cmath>
#include <sstream>
#include <functional>
#include <algorithm>
#include <cstdint>

Go to the source code of this file.

Macros

#define JPH_VERSION_MAJOR   5
 
#define JPH_VERSION_MINOR   0
 
#define JPH_VERSION_PATCH   0
 
#define JPH_VERSION_FEATURE_BIT_1   0
 
#define JPH_VERSION_FEATURE_BIT_2   0
 
#define JPH_VERSION_FEATURE_BIT_3   0
 
#define JPH_VERSION_FEATURE_BIT_4   1
 
#define JPH_VERSION_FEATURE_BIT_5   0
 
#define JPH_VERSION_FEATURE_BIT_6   1
 
#define JPH_VERSION_FEATURE_BIT_7   0
 
#define JPH_VERSION_FEATURE_BIT_8   0
 
#define JPH_VERSION_FEATURE_BIT_9   0
 
#define JPH_VERSION_FEATURE_BIT_10   0
 
#define JPH_VERSION_FEATURES   (uint64(JPH_VERSION_FEATURE_BIT_1) | (JPH_VERSION_FEATURE_BIT_2 << 1) | (JPH_VERSION_FEATURE_BIT_3 << 2) | (JPH_VERSION_FEATURE_BIT_4 << 3) | (JPH_VERSION_FEATURE_BIT_5 << 4) | (JPH_VERSION_FEATURE_BIT_6 << 5) | (JPH_VERSION_FEATURE_BIT_7 << 6) | (JPH_VERSION_FEATURE_BIT_8 << 7) | (JPH_VERSION_FEATURE_BIT_9 << 8) | (JPH_VERSION_FEATURE_BIT_10 << 9))
 
#define JPH_VERSION_ID   ((JPH_VERSION_FEATURES << 24) | (JPH_VERSION_MAJOR << 16) | (JPH_VERSION_MINOR << 8) | JPH_VERSION_PATCH)
 
#define JPH_PLATFORM_WINDOWS_UWP
 
#define JPH_PLATFORM_WINDOWS
 
#define JPH_IF_NOT_ANDROID(x)   x
 
#define JPH_EXPORT
 
#define JPH_EXPORT_GCC_BUG_WORKAROUND   JPH_EXPORT
 
#define JPH_NO_EXPORT
 
#define JPH_CLANG_SUPPRESS_WARNING(w)
 
#define JPH_CLANG_13_PLUS_SUPPRESS_WARNING(w)
 
#define JPH_CLANG_16_PLUS_SUPPRESS_WARNING(w)
 
#define JPH_GCC_SUPPRESS_WARNING(w)
 
#define JPH_MSVC_SUPPRESS_WARNING(w)
 
#define JPH_MSVC2019_SUPPRESS_WARNING(w)
 
#define JPH_SUPPRESS_WARNINGS
 
#define JPH_BREAKPOINT   __debugbreak()
 
#define JPH_NAMESPACE_BEGIN
 
#define JPH_NAMESPACE_END
 
#define JPH_SUPPRESS_WARNINGS_STD_BEGIN
 
#define JPH_SUPPRESS_WARNINGS_STD_END    JPH_SUPPRESS_WARNING_POP
 
#define JPH_CACHE_LINE_SIZE   64
 
#define JPH_STACK_ALLOC(n)   alloca(n)
 
#define JPH_IF_DEBUG(...)
 
#define JPH_IF_NOT_DEBUG(...)   __VA_ARGS__
 
#define JPH_IF_FLOATING_POINT_EXCEPTIONS_ENABLED(...)
 
#define JPH_IF_SINGLE_PRECISION(...)   __VA_ARGS__
 
#define JPH_IF_SINGLE_PRECISION_ELSE(s, d)   s
 
#define JPH_IF_DOUBLE_PRECISION(...)
 
#define JPH_IF_DEBUG_RENDERER(...)   __VA_ARGS__
 
#define JPH_IF_NOT_DEBUG_RENDERER(...)
 
#define JPH_UNUSED(x)   (void)x
 

Typedefs

using uint = unsigned int
 
using uint8 = std::uint8_t
 
using uint16 = std::uint16_t
 
using uint32 = std::uint32_t
 
using uint64 = std::uint64_t
 

Macro Definition Documentation

◆ JPH_BREAKPOINT

#define JPH_BREAKPOINT   __debugbreak()

◆ JPH_CACHE_LINE_SIZE

#define JPH_CACHE_LINE_SIZE   64

◆ JPH_CLANG_13_PLUS_SUPPRESS_WARNING

#define JPH_CLANG_13_PLUS_SUPPRESS_WARNING (   w)

◆ JPH_CLANG_16_PLUS_SUPPRESS_WARNING

#define JPH_CLANG_16_PLUS_SUPPRESS_WARNING (   w)

◆ JPH_CLANG_SUPPRESS_WARNING

#define JPH_CLANG_SUPPRESS_WARNING (   w)

◆ JPH_EXPORT

#define JPH_EXPORT

◆ JPH_EXPORT_GCC_BUG_WORKAROUND

#define JPH_EXPORT_GCC_BUG_WORKAROUND   JPH_EXPORT

◆ JPH_GCC_SUPPRESS_WARNING

#define JPH_GCC_SUPPRESS_WARNING (   w)

◆ JPH_IF_DEBUG

#define JPH_IF_DEBUG (   ...)

◆ JPH_IF_DEBUG_RENDERER

#define JPH_IF_DEBUG_RENDERER (   ...)    __VA_ARGS__

◆ JPH_IF_DOUBLE_PRECISION

#define JPH_IF_DOUBLE_PRECISION (   ...)

◆ JPH_IF_FLOATING_POINT_EXCEPTIONS_ENABLED

#define JPH_IF_FLOATING_POINT_EXCEPTIONS_ENABLED (   ...)

◆ JPH_IF_NOT_ANDROID

#define JPH_IF_NOT_ANDROID (   x)    x

◆ JPH_IF_NOT_DEBUG

#define JPH_IF_NOT_DEBUG (   ...)    __VA_ARGS__

◆ JPH_IF_NOT_DEBUG_RENDERER

#define JPH_IF_NOT_DEBUG_RENDERER (   ...)

◆ JPH_IF_SINGLE_PRECISION

#define JPH_IF_SINGLE_PRECISION (   ...)    __VA_ARGS__

◆ JPH_IF_SINGLE_PRECISION_ELSE

#define JPH_IF_SINGLE_PRECISION_ELSE (   s,
 
)    s

◆ JPH_MSVC2019_SUPPRESS_WARNING

#define JPH_MSVC2019_SUPPRESS_WARNING (   w)

◆ JPH_MSVC_SUPPRESS_WARNING

#define JPH_MSVC_SUPPRESS_WARNING (   w)

◆ JPH_NAMESPACE_BEGIN

#define JPH_NAMESPACE_BEGIN
Value:
JPH_SUPPRESS_WARNING_PUSH \
JPH_SUPPRESS_WARNINGS \
namespace JPH {

◆ JPH_NAMESPACE_END

#define JPH_NAMESPACE_END
Value:
} \
JPH_SUPPRESS_WARNING_POP

◆ JPH_NO_EXPORT

#define JPH_NO_EXPORT

◆ JPH_PLATFORM_WINDOWS

#define JPH_PLATFORM_WINDOWS

◆ JPH_PLATFORM_WINDOWS_UWP

#define JPH_PLATFORM_WINDOWS_UWP

◆ JPH_STACK_ALLOC

#define JPH_STACK_ALLOC (   n)    alloca(n)

◆ JPH_SUPPRESS_WARNINGS

#define JPH_SUPPRESS_WARNINGS

◆ JPH_SUPPRESS_WARNINGS_STD_BEGIN

#define JPH_SUPPRESS_WARNINGS_STD_BEGIN
Value:
JPH_SUPPRESS_WARNING_PUSH \
JPH_MSVC_SUPPRESS_WARNING(4365) \
JPH_MSVC_SUPPRESS_WARNING(4619) \
JPH_MSVC_SUPPRESS_WARNING(4710) \
JPH_MSVC_SUPPRESS_WARNING(4711) \
JPH_MSVC_SUPPRESS_WARNING(4820) \
JPH_MSVC_SUPPRESS_WARNING(4514) \
JPH_MSVC_SUPPRESS_WARNING(5262) \
JPH_MSVC_SUPPRESS_WARNING(5264) \
JPH_MSVC_SUPPRESS_WARNING(4738)

◆ JPH_SUPPRESS_WARNINGS_STD_END

#define JPH_SUPPRESS_WARNINGS_STD_END    JPH_SUPPRESS_WARNING_POP

◆ JPH_UNUSED

#define JPH_UNUSED (   x)    (void)x

◆ JPH_VERSION_FEATURE_BIT_1

#define JPH_VERSION_FEATURE_BIT_1   0

◆ JPH_VERSION_FEATURE_BIT_10

#define JPH_VERSION_FEATURE_BIT_10   0

◆ JPH_VERSION_FEATURE_BIT_2

#define JPH_VERSION_FEATURE_BIT_2   0

◆ JPH_VERSION_FEATURE_BIT_3

#define JPH_VERSION_FEATURE_BIT_3   0

◆ JPH_VERSION_FEATURE_BIT_4

#define JPH_VERSION_FEATURE_BIT_4   1

◆ JPH_VERSION_FEATURE_BIT_5

#define JPH_VERSION_FEATURE_BIT_5   0

◆ JPH_VERSION_FEATURE_BIT_6

#define JPH_VERSION_FEATURE_BIT_6   1

◆ JPH_VERSION_FEATURE_BIT_7

#define JPH_VERSION_FEATURE_BIT_7   0

◆ JPH_VERSION_FEATURE_BIT_8

#define JPH_VERSION_FEATURE_BIT_8   0

◆ JPH_VERSION_FEATURE_BIT_9

#define JPH_VERSION_FEATURE_BIT_9   0

◆ JPH_VERSION_FEATURES

◆ JPH_VERSION_ID

#define JPH_VERSION_ID   ((JPH_VERSION_FEATURES << 24) | (JPH_VERSION_MAJOR << 16) | (JPH_VERSION_MINOR << 8) | JPH_VERSION_PATCH)

◆ JPH_VERSION_MAJOR

#define JPH_VERSION_MAJOR   5

◆ JPH_VERSION_MINOR

#define JPH_VERSION_MINOR   0

◆ JPH_VERSION_PATCH

#define JPH_VERSION_PATCH   0

Typedef Documentation

◆ uint

using uint = unsigned int

◆ uint16

using uint16 = std::uint16_t

◆ uint32

using uint32 = std::uint32_t

◆ uint64

using uint64 = std::uint64_t

◆ uint8

using uint8 = std::uint8_t