|
Games Task Scheduler (GTS)
A multi-processor scheduling framework for games engines
|
An sub-vector used by ParallelVector. More...
#include <ParallelVector.h>
Inherits gts::AlignedAllocator< GTS_NO_SHARING_CACHE_LINE_SIZE >.
Classes | |
| struct | index_buffer_type |
| struct | slot_type |
Public Types | |
| using | value_type = T |
| using | size_type = size_t |
| using | mutex_type = TSharedMutex |
| using | backoff_type = typename mutex_type::backoff_type |
| using | allocator_type = TAllocator |
Public Member Functions | |
| ParallelSubVector (size_type numVecs, allocator_type const &allocator=allocator_type()) | |
| ParallelSubVector (ParallelSubVector const &other) | |
| ParallelSubVector & | operator= (ParallelSubVector const &other) |
| ParallelSubVector (ParallelSubVector &&other) | |
| ParallelSubVector & | operator= (ParallelSubVector &&other) |
| template<typename... TArgs> | |
| void | emplaceBack (size_type globalIdx, TArgs &&... args) |
| template<bool useLock> | |
| value_type && | pop_back_and_get (size_type globalIdx) |
| slot_type * | readAt (size_type globalIdx) const |
| slot_type * | writeAt (size_type globalIdx) |
| void | reserve (size_type newCapacity) |
| void | clear () |
| void | shrinkToFit () |
| size_type | capacity () const |
| allocator_type | get_allocator () const |
| template<typename... TArgs> | |
| void | emplaceBack (size_type globalIdx, TArgs &&... args) |
| template<bool useLock> | |
| ParallelSubVector< T, TSharedMutex, TAllocator >::value_type && | pop_back_and_get (size_type globalIdx) |
An sub-vector used by ParallelVector.
| T | The element type stored in the container. |
| TSharedMutex | The shared mutex type used to grow the table. |
| TAllocator | The allocator used by the storage backing. |