Games Task Scheduler (GTS)
A multi-processor scheduling framework for games engines
Memory

Functions

template<typename T , typename... TArgs>
GTS_INLINE T * gts::unalignedNew (TArgs &&... args)
 Allocates and construct a object of T at T's natural alignment. Allocates with GTS_MALLOC.
 
template<typename T >
GTS_INLINE T * gts::unalignedVectorNew (const size_t n)
 Allocates and construct an array of T. Allocates with GTS_MALLOC.
 
template<typename T >
GTS_INLINE void gts::unalignedDelete (T *ptr)
 Frees and destructs an object T. Memory is freed with GTS_FREE.
 
template<typename T >
GTS_INLINE void gts::unalignedVectorDelete (T *ptr, const size_t n)
 Frees and destructs an array of T objects. Memory is freed with GTS_FREE.
 
template<typename T , size_t ALIGNEMENT, typename... TArgs>
GTS_INLINE T * gts::alignedNew (TArgs &&... args)
 Allocates and construct a object of T with the specified alignment. Allocates with GTS_ALIGNED_MALLOC.
 
template<typename T , size_t ALIGNEMENT>
GTS_INLINE T * gts::alignedVectorNew (const size_t n)
 Allocates and construct an array of T with the specified alignment. Allocates with GTS_ALIGNED_MALLOC.
 
template<typename T >
GTS_INLINE void gts::alignedDelete (T *ptr)
 Frees and destructs an object T. Memory is freed with GTS_ALIGNED_FREE.
 
template<typename T >
GTS_INLINE void gts::alignedVectorDelete (T *ptr, const size_t n)
 Frees and destructs the array of T. Memory is freed with GTS_ALIGNED_FREE.
 

Detailed Description

Wrappers around standard lib and OS memory libraries.