40 #ifndef __OPENFLUID_CORE_VECTOR_HPP__ 41 #define __OPENFLUID_CORE_VECTOR_HPP__ 71 bool allocate(
unsigned long Size);
93 Vector(
unsigned long Size);
98 Vector(
unsigned long Size, T InitValue);
103 Vector(T* Data,
unsigned long Size);
139 void setData(T* Data,
unsigned long Size);
144 T getElement(
unsigned long Index)
const;
149 inline T
at(
unsigned long Index)
const 151 return getElement(Index);
157 inline T
get(
unsigned long Index)
const 159 return getElement(Index);
166 void setElement(
unsigned long Index, T Element);
171 inline void set(
unsigned long Index, T Element)
173 setElement(Index,Element);
180 T& operator[](
unsigned long Index);
190 void fill(
const T& Val);
222 return &m_Data[m_Size];
229 inline const_iterator
end()
const 231 return &m_Data[m_Size];
297 if (m_Data !=
nullptr)
300 for (i=0;i<m_Size;i++)
302 m_Data[i] = InitValue;
322 std::copy(Data, Data + Size, m_Data);
348 m_Data =
new T[Size];
349 if (m_Data !=
nullptr)
377 std::copy(Data, Data + Size, m_Data);
393 return m_Data[Index];
409 m_Data[Index] = Element;
425 return m_Data[Index];
469 std::fill(m_Data, m_Data + m_Size,Val);
494 for (
unsigned long i = 0; i < Source.
m_Size;i++)
Definition: ApplicationException.hpp:47
const_iterator begin() const
Definition: Vector.hpp:211
Definition: FrameworkException.hpp:50
void setElement(unsigned long Index, T Element)
Definition: Vector.hpp:402
static void copy(const Vector &Source, Vector &Dest)
Definition: Vector.hpp:490
void fill(const T &Val)
Definition: Vector.hpp:467
Definition: Vector.hpp:56
void clear()
Definition: Vector.hpp:478
T * iterator
Definition: Vector.hpp:60
void init()
Definition: Vector.hpp:455
iterator end()
Definition: Vector.hpp:220
T * data() const
Definition: Vector.hpp:131
iterator begin()
Definition: Vector.hpp:202
Vector< T > & operator=(const Vector &A)
Definition: Vector.hpp:434
unsigned long m_Size
Definition: Vector.hpp:69
T getElement(unsigned long Index) const
Definition: Vector.hpp:386
const T * const_iterator
Definition: Vector.hpp:62
T * m_Data
Definition: Vector.hpp:67
const_iterator end() const
Definition: Vector.hpp:229
Vector()
Definition: Vector.hpp:242
virtual ~Vector()
Definition: Vector.hpp:332
void setData(T *Data, unsigned long Size)
Definition: Vector.hpp:368
#define OPENFLUID_API
Definition: dllexport.hpp:86
T at(unsigned long Index) const
Definition: Vector.hpp:149
T & operator[](unsigned long Index)
Definition: Vector.hpp:418
bool allocate(unsigned long Size)
Definition: Vector.hpp:343
unsigned long getSize() const
Definition: Vector.hpp:114
unsigned long size() const
Definition: Vector.hpp:123