CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Attributes
EZArrayFL< T > Class Template Reference

#include <EZArrayFL.h>

Public Types

typedef MgrType::const_iterator const_iterator
 
typedef MgrType::const_reference const_reference
 
typedef MgrType::iterator iterator
 
typedef EZMgrFL< TMgrType
 
typedef MgrType::reference reference
 
typedef MgrType::size_type size_type
 
typedef MgrType::value_type value_type
 

Public Member Functions

void assign (const T &t=T())
 
const_iterator begin () const
 
size_type capacity () const
 
bool empty () const
 
const_iterator end () const
 
 EZArrayFL (MgrType *mgr)
 
 EZArrayFL (MgrType *mgr, const_iterator start, const_iterator finis)
 
 EZArrayFL ()
 
reference operator[] (const unsigned int i)
 
const_reference operator[] (const unsigned int i) const
 
void resize ()
 
size_type size () const
 
bool uninitialized () const
 
virtual ~EZArrayFL ()
 

Private Attributes

iterator m_begin
 
MgrTypem_mgr
 

Detailed Description

template<class T>
class EZArrayFL< T >

Definition at line 20 of file EZArrayFL.h.

Member Typedef Documentation

template<class T>
typedef MgrType::const_iterator EZArrayFL< T >::const_iterator

Definition at line 24 of file EZArrayFL.h.

template<class T>
typedef MgrType::const_reference EZArrayFL< T >::const_reference

Definition at line 26 of file EZArrayFL.h.

template<class T>
typedef MgrType::iterator EZArrayFL< T >::iterator

Definition at line 23 of file EZArrayFL.h.

template<class T>
typedef EZMgrFL<T> EZArrayFL< T >::MgrType

Definition at line 22 of file EZArrayFL.h.

template<class T>
typedef MgrType::reference EZArrayFL< T >::reference

Definition at line 25 of file EZArrayFL.h.

template<class T>
typedef MgrType::size_type EZArrayFL< T >::size_type

Definition at line 27 of file EZArrayFL.h.

template<class T>
typedef MgrType::value_type EZArrayFL< T >::value_type

Definition at line 28 of file EZArrayFL.h.

Constructor & Destructor Documentation

template<class T>
EZArrayFL< T >::EZArrayFL ( )
inline

Definition at line 30 of file EZArrayFL.h.

30 : m_begin(), m_mgr() {}
MgrType * m_mgr
Definition: EZArrayFL.h:76
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
EZArrayFL< T >::EZArrayFL ( MgrType mgr)
inline

Definition at line 32 of file EZArrayFL.h.

32 : m_begin(), m_mgr(mgr) {}
MgrType * m_mgr
Definition: EZArrayFL.h:76
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
EZArrayFL< T >::EZArrayFL ( MgrType mgr,
const_iterator  start,
const_iterator  finis 
)
inline

Definition at line 34 of file EZArrayFL.h.

35  : m_begin(0 == finis - start ? iterator() : mgr->assign()), m_mgr(mgr) {
36  assert((finis - start) == m_mgr->subSize());
37  iterator i(begin());
38  for (const_iterator ic(start); ic != finis; ++ic) {
39  (*i) = (*ic);
40  }
41  }
const_iterator begin() const
Definition: EZArrayFL.h:52
MgrType * m_mgr
Definition: EZArrayFL.h:76
assert(be >=bs)
MgrType::iterator iterator
Definition: EZArrayFL.h:23
size_type subSize() const
Definition: EZMgrFL.h:42
MgrType::const_iterator const_iterator
Definition: EZArrayFL.h:24
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
virtual EZArrayFL< T >::~EZArrayFL ( )
inlinevirtual

Definition at line 43 of file EZArrayFL.h.

43 {}

Member Function Documentation

template<class T>
void EZArrayFL< T >::assign ( const T t = T())
inline

Definition at line 47 of file EZArrayFL.h.

Referenced by HCaloDetIdAssociator::getDetIdPoints(), EZArrayFL< GlobalPoint >::operator[](), and EZArrayFL< GlobalPoint >::resize().

47  {
48  assert(iterator() == m_begin);
49  m_begin = m_mgr->assign(t);
50  }
MgrType * m_mgr
Definition: EZArrayFL.h:76
assert(be >=bs)
MgrType::iterator iterator
Definition: EZArrayFL.h:23
iterator assign(const T &t=T())
Definition: EZMgrFL.h:30
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
const_iterator EZArrayFL< T >::begin ( void  ) const
inline
template<class T>
size_type EZArrayFL< T >::capacity ( ) const
inline

Definition at line 69 of file EZArrayFL.h.

69 { return size(); }
size_type size() const
Definition: EZArrayFL.h:67
template<class T>
bool EZArrayFL< T >::empty ( void  ) const
inline

Definition at line 65 of file EZArrayFL.h.

Referenced by CaloCellGeometry::emptyCorners().

65 { return (0 == size()); }
size_type size() const
Definition: EZArrayFL.h:67
template<class T>
const_iterator EZArrayFL< T >::end ( void  ) const
inline

Definition at line 53 of file EZArrayFL.h.

Referenced by FWRecoGeometryESProducer::addCaloGeometry(), and TrackDetMatchInfo::dumpGeometry().

53 { return m_begin + m_mgr->subSize(); }
MgrType * m_mgr
Definition: EZArrayFL.h:76
size_type subSize() const
Definition: EZMgrFL.h:42
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
reference EZArrayFL< T >::operator[] ( const unsigned int  i)
inline

Definition at line 55 of file EZArrayFL.h.

55  {
56  if (iterator() == m_begin)
57  assign();
58  return *(m_begin + i);
59  }
MgrType::iterator iterator
Definition: EZArrayFL.h:23
void assign(const T &t=T())
Definition: EZArrayFL.h:47
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
const_reference EZArrayFL< T >::operator[] ( const unsigned int  i) const
inline

Definition at line 61 of file EZArrayFL.h.

61 { return *(m_begin + i); }
iterator m_begin
Definition: EZArrayFL.h:75
template<class T>
void EZArrayFL< T >::resize ( )
inline

Definition at line 45 of file EZArrayFL.h.

45 { assign(); }
void assign(const T &t=T())
Definition: EZArrayFL.h:47
template<class T>
size_type EZArrayFL< T >::size ( void  ) const
inline
template<class T>
bool EZArrayFL< T >::uninitialized ( ) const
inline

Member Data Documentation

template<class T>
iterator EZArrayFL< T >::m_begin
private
template<class T>
MgrType* EZArrayFL< T >::m_mgr
private