|
void | setName (std::string const &name) |
| Set the name to be displayed whenever the underlying Buffer's user call back is called. More...
|
|
|
| ArrayOfSets (INDEX_TYPE const nsets=0, INDEX_TYPE defaultSetCapacity=0) |
| Constructor. More...
|
|
| ArrayOfSets (ArrayOfSets const &src) |
| Copy constructor, performs a deep copy. More...
|
|
| ArrayOfSets (ArrayOfSets &&)=default |
| Default move constructor, performs a shallow copy.
|
|
| ~ArrayOfSets () |
| Destructor, frees the values, sizes and offsets Buffers.
|
|
|
ArrayOfSets & | operator= (ArrayOfSets const &src) |
| Copy assignment operator, performs a deep copy. More...
|
|
ArrayOfSets & | operator= (ArrayOfSets &&src) |
| Default move assignment operator, performs a shallow copy. More...
|
|
void | assimilate (ArrayOfArrays< T, INDEX_TYPE, BUFFER_TYPE > &&src, sortedArrayManipulation::Description const desc) |
| Steal the resources from an ArrayOfArrays and convert it to an ArrayOfSets. More...
|
|
|
constexpr ArrayOfSetsView< T, INDEX_TYPE const, BUFFER_TYPE > | toView () const & |
|
constexpr ArrayOfSetsView< T, INDEX_TYPE const, BUFFER_TYPE > | toView () const &&=delete |
| Overload for rvalues that is deleted. More...
|
|
constexpr ArrayOfSetsView< T const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const & |
|
constexpr ArrayOfSetsView< T const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const &&=delete |
| Overload for rvalues that is deleted. More...
|
|
constexpr ArrayOfArraysView< T const, INDEX_TYPE const, true, BUFFER_TYPE > | toArrayOfArraysView () const & |
|
constexpr ArrayOfArraysView< T const, INDEX_TYPE const, true, BUFFER_TYPE > | toArrayOfArraysView () const &&=delete |
| Overload for rvalues that is deleted. More...
|
|
|
INDEX_TYPE | size () const |
|
|
void | resize (INDEX_TYPE const newSize, INDEX_TYPE const defaultArrayCapacity=0) |
| Set the number of arrays. More...
|
|
|
void | appendSet (INDEX_TYPE const setCapacity=0) |
| Append a set with capacity setCapacity . More...
|
|
void | insertSet (INDEX_TYPE const i, INDEX_TYPE const setCapacity=0) |
| Insert a set at position i with capacity setCapacity . More...
|
|
void | eraseSet (INDEX_TYPE const i) |
| Erase a set. More...
|
|
|
bool | insertIntoSet (INDEX_TYPE const i, T const &val) |
| Insert a value into the given set. More...
|
|
template<typename ITER > |
INDEX_TYPE | insertIntoSet (INDEX_TYPE const i, ITER const first, ITER const last) |
| Inserts multiple values into the given set. More...
|
|
bool | removeFromSet (INDEX_TYPE const i, T const &value) const |
| Remove a value from the given set. More...
|
|
template<typename ITER > |
INDEX_TYPE | removeFromSet (INDEX_TYPE const i, ITER const first, ITER const last) const |
| Removes multiple values from the given set. More...
|
|
void | clearSet (INDEX_TYPE const i) |
| Clear a set. More...
|
|
void | setCapacityOfSet (INDEX_TYPE const i, INDEX_TYPE newCapacity) |
| Set the capacity of a set. More...
|
|
void | reserveCapacityOfSet (INDEX_TYPE const i, INDEX_TYPE newCapacity) |
| Reserve space in a set. More...
|
|
|
void | move (MemorySpace const space, bool const touch=true) const |
| Move this ArrayOfSets to the given memory space. More...
|
|
|
using | ParentClass = ArrayOfArraysView< T, INDEX_TYPE, std::is_const< T >::value, BUFFER_TYPE > |
| Alias for the parent class.
|
|
using | INDEX_TYPE_NC = typename ParentClass::INDEX_TYPE_NC |
| Since INDEX_TYPE should always be const we need an alias for the non const version.
|
|
using | SIZE_TYPE = std::conditional_t< CONST_SIZES, INDEX_TYPE const, INDEX_TYPE_NC > |
| The type contained by the m_sizes buffer.
|
|
using | ValueType = T |
| An alias for the type contained in the inner arrays.
|
|
using | IndexType = INDEX_TYPE |
| The integer type used for indexing.
|
|
using | value_type = T |
| An alias for the type contained in the inner arrays, here for stl compatability.
|
|
using | size_type = INDEX_TYPE |
| The integer type used for indexing, here for stl compatability.
|
|
using | INDEX_TYPE_NC = std::remove_const_t< INDEX_TYPE > |
| Since INDEX_TYPE should always be const we need an alias for the non const version.
|
|
using | SIZE_TYPE = std::conditional_t< CONST_SIZES, INDEX_TYPE const, INDEX_TYPE_NC > |
| The type contained by the m_sizes buffer.
|
|
using | PairOfBuffers = std::pair< BUFFER_TYPE< U > &, BUFFER_TYPE< U > const & > |
| Alias for a std::pair of buffers. More...
|
|
using | ValueType = T |
| An alias for the type contained in the inner arrays.
|
|
using | IndexType = INDEX_TYPE |
| The integer type used for indexing.
|
|
using | value_type = T |
| An alias for the type contained in the inner arrays, here for stl compatability.
|
|
using | size_type = INDEX_TYPE |
| The integer type used for indexing, here for stl compatability.
|
|
| ArrayOfSetsView (bool) |
| Protected constructor to be used by parent classes. More...
|
|
constexpr ArraySlice< T, 1, 0, INDEX_TYPE_NC > | getSetValues (INDEX_TYPE const i) const |
|
template<typename CALLBACKS > |
bool | insertIntoSetImpl (INDEX_TYPE const i, T const &value, CALLBACKS &&cbacks) const |
| Helper function to insert a value into the given set. More...
|
|
template<typename ITER , typename CALLBACKS > |
INDEX_TYPE_NC | insertIntoSetImpl (INDEX_TYPE const i, ITER const first, ITER const last, CALLBACKS &&cbacks) const |
| Inserts multiple values into the given set. More...
|
|
template<typename CALLBACKS > |
bool | removeFromSetImpl (INDEX_TYPE const i, T const &value, CALLBACKS &&cbacks) const |
| Helper function to remove a value from the given set. More...
|
|
template<typename ITER , typename CALLBACKS > |
INDEX_TYPE_NC | removeFromSetImpl (INDEX_TYPE const i, ITER const first, ITER const last, CALLBACKS &&cbacks) const |
| Removes multiple values from the given set. More...
|
|
| ArrayOfSetsView ()=default |
| A constructor to create an uninitialized ArrayOfSetsView. More...
|
|
| ArrayOfSetsView (ArrayOfSetsView const &)=default |
| Default copy constructor. Performs a shallow copy and calls the chai::ManagedArray copy constructor.
|
|
| ArrayOfSetsView (ArrayOfSetsView &&)=default |
| Default move constructor.
|
|
constexpr | ArrayOfSetsView (INDEX_TYPE const numArrays, BUFFER_TYPE< INDEX_TYPE > const &offsets, BUFFER_TYPE< SIZE_TYPE > const &sizes, BUFFER_TYPE< T > const &values) |
| Construct a new ArrayOfArraysView from the given buffers. More...
|
|
ArrayOfSetsView & | operator= (ArrayOfSetsView const &)=default |
| Default copy assignment operator, this does a shallow copy. More...
|
|
ArrayOfSetsView & | operator= (ArrayOfSetsView &&)=default |
| Default move assignment operator, this does a shallow copy. More...
|
|
constexpr ArrayOfSetsView< T, INDEX_TYPE const, BUFFER_TYPE > | toView () const |
|
constexpr ArrayOfSetsView< T const, INDEX_TYPE const, BUFFER_TYPE > | toViewConst () const |
|
constexpr ArrayOfArraysView< T const, INDEX_TYPE const, true, BUFFER_TYPE > | toArrayOfArraysView () const |
|
constexpr INDEX_TYPE_NC | sizeOfSet (INDEX_TYPE const i) const |
|
constexpr INDEX_TYPE_NC | capacityOfSet (INDEX_TYPE const i) const |
|
bool | contains (INDEX_TYPE const i, T const &value) const |
|
void | consistencyCheck () const |
| Verify that the capacity of each set is greater than or equal to the size and that each set is sorted unique. More...
|
|
constexpr ArraySlice< T const, 1, 0, INDEX_TYPE_NC > | operator[] (INDEX_TYPE const i) const |
|
constexpr T const & | operator() (INDEX_TYPE const i, INDEX_TYPE const j) const |
|
bool | insertIntoSet (INDEX_TYPE const i, T const &value) const |
| Insert a value into the given set. More...
|
|
template<typename ITER > |
INDEX_TYPE_NC | insertIntoSet (INDEX_TYPE const i, ITER const first, ITER const last) const |
| Inserts multiple values into the given set. More...
|
|
bool | removeFromSet (INDEX_TYPE const i, T const &value) const |
| Remove a value from the given set. More...
|
|
template<typename ITER > |
INDEX_TYPE_NC | removeFromSet (INDEX_TYPE const i, ITER const first, ITER const last) const |
| Removes multiple values from the given set. More...
|
|
void | move (MemorySpace const space, bool const touch=true) const |
| Move this ArrayOfSets to the given memory space. More...
|
|
| ArrayOfArraysView (bool) |
| Protected constructor to be used by parent classes. More...
|
|
void | resize (INDEX_TYPE const newSize, INDEX_TYPE const defaultArrayCapacity=0) |
| Set the number of arrays. More...
|
|
void | reserve (INDEX_TYPE const newCapacity) |
| Reserve space for the given number of arrays. More...
|
|
void | reserveValues (INDEX_TYPE const newValueCapacity, BUFFERS &... buffers) |
| Reserve space for the given number of values. More...
|
|
void | compress (BUFFERS &... buffers) |
| Compress the arrays so that the values of each array are contiguous with no extra capacity in between. More...
|
|
void | resizeFromCapacities (INDEX_TYPE const numSubArrays, INDEX_TYPE const *const capacities, BUFFERS &... buffers) |
| Clears the array and creates a new array with the given number of sub-arrays. More...
|
|
void | assimilate (ArrayOfArraysView< T, INDEX_TYPE, CONST_SIZES, BUFFER_TYPE > &&src) |
| Steal the resources of src , clearing it in the process. More...
|
|
void | resizeImpl (INDEX_TYPE const newSize, INDEX_TYPE const defaultArrayCapacity, BUFFERS &... buffers) |
| Set the number of arrays. More...
|
|
void | free (BUFFERS &... buffers) |
| Destroy all the objects held by this array and free all associated memory. More...
|
|
void | setEqualTo (INDEX_TYPE const srcNumArrays, INDEX_TYPE const srcMaxOffset, BUFFER_TYPE< INDEX_TYPE > const &srcOffsets, BUFFER_TYPE< INDEX_TYPE > const &srcSizes, BUFFER_TYPE< T > const &srcValues, PAIRS_OF_BUFFERS &&... pairs) |
| Set this ArrayOfArraysView equal to the provided arrays. More...
|
|
void | setCapacityOfArray (INDEX_TYPE const i, INDEX_TYPE const newCapacity, BUFFERS &... buffers) |
| Set the capacity of the given array. More...
|
|
void | setName (std::string const &name) |
| Set the name to be displayed whenever the underlying Buffer's user call back is called. More...
|
|
| ArrayOfArraysView ()=default |
| A constructor to create an uninitialized ArrayOfArraysView. More...
|
|
| ArrayOfArraysView (ArrayOfArraysView const &)=default |
| Default copy constructor. More...
|
|
constexpr | ArrayOfArraysView (ArrayOfArraysView &&src) |
| Default move constructor. More...
|
|
constexpr | ArrayOfArraysView (INDEX_TYPE const numArrays, BUFFER_TYPE< INDEX_TYPE > const &offsets, BUFFER_TYPE< SIZE_TYPE > const &sizes, BUFFER_TYPE< T > const &values) |
| Construct a new ArrayOfArraysView from the given buffers. More...
|
|
ArrayOfArraysView & | operator= (ArrayOfArraysView const &)=default |
| Default copy assignment operator. More...
|
|
ArrayOfArraysView & | operator= (ArrayOfArraysView &&src) |
| Move assignment operator.. More...
|
|
constexpr ArrayOfArraysView< T, INDEX_TYPE const, CONST_SIZES, BUFFER_TYPE > | toView () const |
|
constexpr ArrayOfArraysView< T, INDEX_TYPE const, true, BUFFER_TYPE > | toViewConstSizes () const |
|
constexpr ArrayOfArraysView< T const, INDEX_TYPE const, true, BUFFER_TYPE > | toViewConst () const |
|
constexpr INDEX_TYPE_NC | size () const |
|
constexpr INDEX_TYPE_NC | sizeOfArray (INDEX_TYPE const i) const |
|
CONSTEXPR_WITH_NDEBUG INDEX_TYPE_NC | capacity () const |
|
constexpr INDEX_TYPE_NC | capacityOfArray (INDEX_TYPE const i) const |
|
constexpr INDEX_TYPE_NC | valueCapacity () const |
|
constexpr ArraySlice< T, 1, 0, INDEX_TYPE_NC > | operator[] (INDEX_TYPE const i) const |
|
constexpr T & | operator() (INDEX_TYPE const i, INDEX_TYPE const j) const |
|
void | emplaceBack (INDEX_TYPE const i, ARGS &&... args) const |
| Append a value to an array. More...
|
|
void | emplaceBackAtomic (INDEX_TYPE const i, ARGS &&... args) const |
| Append a value to an array in a thread safe manner. More...
|
|
void | appendToArray (INDEX_TYPE const i, ITER const first, ITER const last) const |
| Append values to an array. More...
|
|
void | emplace (INDEX_TYPE const i, INDEX_TYPE const j, ARGS &&... args) const |
| Insert a value into an array. More...
|
|
void | insertIntoArray (INDEX_TYPE const i, INDEX_TYPE const j, ITER const first, ITER const last) const |
| Insert values into an array. More...
|
|
void | eraseFromArray (INDEX_TYPE const i, INDEX_TYPE const j, INDEX_TYPE const n=1) const |
| Erase values from an array. More...
|
|
void | registerTouch (MemorySpace const space) const |
| Touch the memory in space . More...
|
|
void | move (MemorySpace const space, bool touch=true) const |
| Move this ArrayOfArrays to the given memory space. More...
|
|
INDEX_TYPE_NC | m_numArrays |
| The number of arrays contained.
|
|
BUFFER_TYPE< INDEX_TYPE > | m_offsets |
|
BUFFER_TYPE< SIZE_TYPE > | m_sizes |
| Holds the size of each array.
|
|
BUFFER_TYPE< T > | m_values |
|