20 #ifndef ESSENTIA_ROGUEVECTOR_H
21 #define ESSENTIA_ROGUEVECTOR_H
43 setData(
const_cast<T*
>(v.data()));
60 #if defined(__clang__) || defined(__EMSCRIPTEN__)
70 T** start =
reinterpret_cast<T**
>(
this);
71 *(start+1) = *start + size;
72 *(start+2) = *start + size;
76 #elif defined(OS_LINUX) || defined(OS_MINGW)
83 this->_M_impl._M_finish = this->_M_impl._M_start + size;
84 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + size;
88 #elif defined(OS_WIN32)
92 this->_Myfirst() = data;
97 this->_Mylast() = this->_Myfirst() + size;
98 this->_Myend() = this->_Myfirst() + size;
Definition: roguevector.h:30
bool _ownsMemory
Definition: roguevector.h:32
~RogueVector()
Definition: roguevector.h:47
void setSize(size_t size)
Definition: roguevector.h:82
RogueVector(const RogueVector< T > &v)
Definition: roguevector.h:42
RogueVector(uint size, T value)
Definition: roguevector.h:40
void setData(T *data)
Definition: roguevector.h:79
RogueVector(T *tab=0, size_t size=0)
Definition: roguevector.h:35
Definition: algorithm.h:28
unsigned int uint
Definition: types.h:49