40 #ifndef __OPENFLUID_CORE_VECTOR_HPP__ 
   41 #define __OPENFLUID_CORE_VECTOR_HPP__ 
  100     Vector(
unsigned long Size, 
const T& InitValue);
 
  161     inline T 
at(
unsigned long Index)
 const 
  163       return getElement(Index);
 
  169     inline T 
get(
unsigned long Index)
 const 
  171       return getElement(Index);
 
  183     inline void set(
unsigned long Index, 
const T& Val)
 
  185       setElement(Index,Val);
 
  230       return &m_Data[m_Size];
 
  239       return &m_Data[m_Size]; 
 
  265   if (!allocate(Other.
m_Size))
 
  307     std::fill(m_Data.get(), m_Data.get() + Size, InitValue);
 
  326   std::copy(Data, Data + Size, m_Data.get());
 
  359     m_Size = Other.m_Size;
 
  360     m_Data = std::move(Other.m_Data);
 
  379     m_Data = std::move(std::make_unique<T[]>(Size));
 
  409   std::copy(Data, Data + Size, m_Data.get());
 
  425   return m_Data[Index];
 
  457   return m_Data[Index];
 
  480   std::fill(m_Data.get(), m_Data.get() + m_Size,Val);
 
Definition: FrameworkException.hpp:51
Definition: Vector.hpp:59
T * iterator
Definition: Vector.hpp:62
std::unique_ptr< T[]> m_Data
Definition: Vector.hpp:69
unsigned long getSize() const
Definition: Vector.hpp:126
const_iterator begin() const
Definition: Vector.hpp:219
T at(unsigned long Index) const
Definition: Vector.hpp:161
T getElement(unsigned long Index) const
Definition: Vector.hpp:418
void fill(const T &Val)
Definition: Vector.hpp:478
void clear()
Definition: Vector.hpp:489
void setData(T *Data, unsigned long Size)
Definition: Vector.hpp:400
T get(unsigned long Index) const
Definition: Vector.hpp:169
Vector< T > & operator=(Vector &&Other)
Definition: Vector.hpp:353
Vector(unsigned long Size)
Definition: Vector.hpp:279
void init()
Definition: Vector.hpp:466
bool allocate(unsigned long Size)
Definition: Vector.hpp:374
Vector()
Definition: Vector.hpp:250
T & operator[](unsigned long Index)
Definition: Vector.hpp:450
iterator begin()
Definition: Vector.hpp:210
static void copy(const Vector &Source, Vector &Dest)
Definition: Vector.hpp:500
const T * const_iterator
Definition: Vector.hpp:64
Vector(const Vector &Other)
Definition: Vector.hpp:261
void set(unsigned long Index, const T &Val)
Definition: Vector.hpp:183
Vector(unsigned long Size, const T &InitValue)
Definition: Vector.hpp:296
Vector(T *Data, unsigned long Size)
Definition: Vector.hpp:317
iterator end()
Definition: Vector.hpp:228
unsigned long size() const
Definition: Vector.hpp:135
virtual ~Vector()=default
const_iterator end() const
Definition: Vector.hpp:237
Vector< T > & operator=(const Vector &Other)
Definition: Vector.hpp:335
unsigned long m_Size
Definition: Vector.hpp:71
T * data() const
Definition: Vector.hpp:143
void setElement(unsigned long Index, const T &Val)
Definition: Vector.hpp:434
#define OPENFLUID_API
Definition: dllexport.hpp:86
Definition: ApplicationException.hpp:47