ATLAS Offline Software
Loading...
Searching...
No Matches
TCS::DataArrayImpl< DATA > Class Template Reference

#include <DataArrayImpl.h>

Collaboration diagram for TCS::DataArrayImpl< DATA >:

Public Types

typedef std::vector< DATA * > data_t
typedef data_t::iterator iterator
typedef data_t::const_iterator const_iterator

Public Member Functions

 DataArrayImpl (unsigned int reserve=0)
virtual ~DataArrayImpl ()
size_t size () const
size_t capacity () const
void clear ()
virtual void push_back (const DATA &tob)
void pop_back ()
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
DATA & operator[] (const int i)
const DATA & operator[] (const int i) const

Protected Attributes

data_t m_data
unsigned int m_reserve {0}

Detailed Description

template<class DATA>
class TCS::DataArrayImpl< DATA >

Definition at line 13 of file DataArrayImpl.h.

Member Typedef Documentation

◆ const_iterator

template<class DATA>
typedef data_t::const_iterator TCS::DataArrayImpl< DATA >::const_iterator

Definition at line 18 of file DataArrayImpl.h.

◆ data_t

template<class DATA>
typedef std::vector<DATA*> TCS::DataArrayImpl< DATA >::data_t

Definition at line 16 of file DataArrayImpl.h.

◆ iterator

template<class DATA>
typedef data_t::iterator TCS::DataArrayImpl< DATA >::iterator

Definition at line 17 of file DataArrayImpl.h.

Constructor & Destructor Documentation

◆ DataArrayImpl()

template<class DATA>
TCS::DataArrayImpl< DATA >::DataArrayImpl ( unsigned int reserve = 0)
inline

Definition at line 21 of file DataArrayImpl.h.

21 :
23 {
24 m_data.reserve(reserve);
25 }
unsigned int m_reserve

◆ ~DataArrayImpl()

template<class DATA>
virtual TCS::DataArrayImpl< DATA >::~DataArrayImpl ( )
inlinevirtual

Definition at line 28 of file DataArrayImpl.h.

28{};

Member Function Documentation

◆ begin() [1/2]

template<class DATA>
iterator TCS::DataArrayImpl< DATA >::begin ( )
inline

Definition at line 40 of file DataArrayImpl.h.

40{ return m_data.begin(); }

◆ begin() [2/2]

template<class DATA>
const_iterator TCS::DataArrayImpl< DATA >::begin ( ) const
inline

Definition at line 41 of file DataArrayImpl.h.

41{ return m_data.begin(); }

◆ capacity()

template<class DATA>
size_t TCS::DataArrayImpl< DATA >::capacity ( ) const
inline

Definition at line 32 of file DataArrayImpl.h.

32{ return m_data.capacity(); }

◆ clear()

template<class DATA>
void TCS::DataArrayImpl< DATA >::clear ( )
inline

Definition at line 34 of file DataArrayImpl.h.

34{ m_data.clear(); }

◆ end() [1/2]

template<class DATA>
iterator TCS::DataArrayImpl< DATA >::end ( )
inline

Definition at line 43 of file DataArrayImpl.h.

43{ return m_data.end(); }

◆ end() [2/2]

template<class DATA>
const_iterator TCS::DataArrayImpl< DATA >::end ( ) const
inline

Definition at line 44 of file DataArrayImpl.h.

44{ return m_data.end(); }

◆ operator[]() [1/2]

template<class DATA>
DATA & TCS::DataArrayImpl< DATA >::operator[] ( const int i)
inline

Definition at line 46 of file DataArrayImpl.h.

46{ return *m_data[i]; }

◆ operator[]() [2/2]

template<class DATA>
const DATA & TCS::DataArrayImpl< DATA >::operator[] ( const int i) const
inline

Definition at line 47 of file DataArrayImpl.h.

47{ return *m_data[i]; }

◆ pop_back()

template<class DATA>
void TCS::DataArrayImpl< DATA >::pop_back ( )
inline

Definition at line 38 of file DataArrayImpl.h.

38{ m_data.pop_back(); }

◆ push_back()

template<class DATA>
void TCS::DataArrayImpl< DATA >::push_back ( const DATA & tob)
virtual

Definition at line 57 of file DataArrayImpl.h.

57 {
58 m_data.push_back(DATA::createOnHeap(tob));
59}

◆ size()

template<class DATA>
size_t TCS::DataArrayImpl< DATA >::size ( ) const
inline

Definition at line 30 of file DataArrayImpl.h.

30{ return m_data.size(); }

Member Data Documentation

◆ m_data

template<class DATA>
data_t TCS::DataArrayImpl< DATA >::m_data
protected

Definition at line 50 of file DataArrayImpl.h.

◆ m_reserve

template<class DATA>
unsigned int TCS::DataArrayImpl< DATA >::m_reserve {0}
protected

Definition at line 51 of file DataArrayImpl.h.

51{0};

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