arduino-audio-tools
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Vector< T > Class Template Reference

Vector implementation which provides the most important methods as defined by std::vector. This class it is quite handy to have and most of the times quite better then dealing with raw c arrays. More...

#include <Vector.h>

Classes

class  iterator
 Iterator for the Vector class. More...
 

Public Member Functions

 Vector (Allocator &allocator)
 Constructor with only allocator.
 
 Vector (int size, T value, Allocator &allocator=DefaultAllocator)
 Allocate size and initialize array.
 
 Vector (size_t len=0, Allocator &allocator=DefaultAllocator)
 Default constructor: size 0 with DefaultAllocator: The len defines the capacity.
 
 Vector (T *from, T *to, Allocator &allocator=DefaultAllocator)
 legacy constructor with pointer range
 
template<typename TT , int N>
 Vector (TT(&a)[N])
 convert from c array
 
 Vector (Vector< T > &&moveFrom)
 Move constructor.
 
 Vector (Vector< T > &copyFrom)
 copy constructor
 
virtual ~Vector ()
 Destructor.
 
void assign (iterator v1, iterator v2)
 
void assign (size_t number, T value)
 
T & back ()
 
iterator begin ()
 
int capacity ()
 
void clear ()
 
bool contains (T obj)
 
T * data ()
 
bool empty ()
 
iterator end ()
 
void erase (int pos)
 
void erase (iterator it)
 
int indexOf (T obj)
 
 operator bool () const
 
Vectoroperator= (Vector &&moveFrom)
 Move operator.
 
Vector< T > & operator= (Vector< T > &copyFrom)
 copy operator
 
T & operator[] (const int index) const
 
T & operator[] (int index)
 
void pop_back ()
 
void pop_front ()
 
void push_back (T &&value)
 
void push_back (T &value)
 
void push_front (T &&value)
 
void push_front (T &value)
 
void reset ()
 
bool resize (int newSize)
 
bool resize (int newSize, T value)
 
void setAllocator (Allocator &allocator)
 
void shrink_to_fit ()
 
int size ()
 
void swap (T &other)
 
void swap (Vector< T > &in)
 

Protected Member Functions

void cleanup (T *data, int from, int to)
 
void deleteArray (T *oldData, int oldBufferLen)
 
T * newArray (int newSize)
 
void resize_internal (int newSize, bool copy, bool shrink=false)
 

Protected Attributes

int bufferLen = 0
 
int len = 0
 
Allocatorp_allocator = &DefaultAllocator
 
T * p_data = nullptr
 

Detailed Description

template<class T>
class audio_tools::Vector< T >

Vector implementation which provides the most important methods as defined by std::vector. This class it is quite handy to have and most of the times quite better then dealing with raw c arrays.

Author
Phil Schatzmann

The documentation for this class was generated from the following file: