5 #include "CORE_Collection.h"
11 template <
typename T,
typename K,
class I>
58 virtual CORE_UniquePointer<CORE_List<T,K,I>>
newInstance()
const=0;
67 return (*
static_cast<I*
>(
this))[i];
73 return (*
static_cast<I*
>(
this))[i];
126 return functions_type::getTypeName<T>();
this class describes a general container of values of type T where implemented class is I
Definition: CORE_Collection.h:49
this class describes a list K -> T whre I is the implemented class
Definition: CORE_List.h:12
virtual tMemSize getMemorySize() const override
return the memory size of the class and the memory size of all its attributes/associations
Definition: CORE_List.h:47
CORE_List()
build an array of T*
Definition: CORE_List.h:24
void sort()
sort the list in the incresing order
Definition: CORE_List.h:135
virtual ~CORE_List()
destroy an array of T*
Definition: CORE_List.h:31
T & operator[](const K &i)
get the i-th element for writting. Do not verify the bounds
Definition: CORE_List.h:72
const T & operator[](const K &i) const
get the i-th element for reading. Do not verify the bounds
Definition: CORE_List.h:66
tString getDataTypeName() const
get the type of data
Definition: CORE_List.h:125
virtual CORE_UniquePointer< CORE_List< T, K, I > > newInstance() const =0
create a New instance within an unique smart pointer
void directionalSort(const tUChar &order)
sort the element
Definition: CORE_List.h:142
virtual tMemSize getContentsMemorySize() const
return nthe memory size of the included associations
Definition: CORE_Object.h:278