Implementation
Very specialized base classes, templates and helper code used for construction of more concrete types.
Internal
Symbols intended for engine-internal use. Not part of the public API.
Structs
-
TransposePolicy— Policy class that allows us to re-use this template class for matrices which might need transposing, and other types which do not. -
B3DIsResourceHandle— ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////// Various helper methods used for syncing data between the main and the render thread. ///////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -
B3DDecayResourceHandle
Free functions
Min
const T &Min(const T &in)
Helper method for implementing variable-parameter Math::Min.
Min
std::common_type_t<A, B> Min(const A &a, const B &b)
Helper method for implementing variable-parameter Math::Min.
Min
std::common_type_t<A, B, Args...> Min(const A &a, const B &b, const Args &...args)
Helper method for implementing variable-parameter Math::Min.
Max
const T &Max(const T &in)
Helper method for implementing variable-parameter Math::Max.
Max
std::common_type_t<A, B> Max(const A &a, const B &b)
Helper method for implementing variable-parameter Math::Max.
Max
std::common_type_t<A, B, Args...> Max(const A &a, const B &b, const Args &...args)
Helper method for implementing variable-parameter Math::Max.
Gcd
std::common_type_t<A, B> Gcd(const A &a, const B &b)
Helper method for implementing Math::Gcd.
Lcm
std::common_type_t<A, B> Lcm(const A &a, const B &b)
Helper method for implementing Math::Lcm.
Swap
inline void Swap(b3d::BitReference &&lhs, b3d::BitReference &&rhs)
RemoveHandle
T &&RemoveHandle(T &&value, std::enable_if_t<!B3DIsResourceHandle<std::decay_t<T>>::value> * = 0)
Pass non-resource-handle types as is.
RemoveHandle
decltype(((std::decay_t<T> *)nullptr)->GetShared()) RemoveHandle(T &&handle, std::enable_if_t<B3DIsResourceHandle<std::decay_t<T>>::value> * = 0)
Convert a resource handle to the underlying resource SPtr.
ScriptArrayGet
T ScriptArrayGet(MonoArray *array, u32 idx)
ScriptArraySet
void ScriptArraySet(MonoArray *array, u32 idx, const T &value)
ScriptArrayCreate
inline ScriptArray ScriptArrayCreate(u32 size)