CMS 3D CMS Logo

EZArrayVL< T > Class Template Reference

#include <Geometry/CaloGeometry/interface/EZArrayVL.h>

List of all members.

Public Types

typedef MgrType::const_iterator const_iterator
typedef MgrType::const_reference const_reference
typedef MgrType::iterator iterator
typedef EZMgrVL< T > MgrType
typedef MgrType::reference reference
typedef MgrType::size_type size_type
typedef MgrType::value_type value_type

Public Member Functions

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

Private Member Functions

 EZArrayVL ()

Private Attributes

iterator m_begin
const MgrTypem_mgr
size_type m_size


Detailed Description

template<class T>
class EZArrayVL< T >

Definition at line 7 of file EZArrayVL.h.


Member Typedef Documentation

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

Definition at line 13 of file EZArrayVL.h.

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

Definition at line 15 of file EZArrayVL.h.

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

Definition at line 12 of file EZArrayVL.h.

template<class T>
typedef EZMgrVL< T > EZArrayVL< T >::MgrType

Definition at line 11 of file EZArrayVL.h.

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

Definition at line 14 of file EZArrayVL.h.

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

Definition at line 16 of file EZArrayVL.h.

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

Definition at line 17 of file EZArrayVL.h.


Constructor & Destructor Documentation

template<class T>
EZArrayVL< T >::EZArrayVL ( const MgrType mgr,
size_type  size = 0,
const T &  t = T() 
) [inline]

template<class T>
EZArrayVL< T >::EZArrayVL ( const MgrType mgr,
const_iterator  start,
const_iterator  finis 
) [inline]

template<class T>
virtual EZArrayVL< T >::~EZArrayVL (  )  [inline, virtual]

template<class T>
EZArrayVL< T >::EZArrayVL (  )  [private]


Member Function Documentation

template<class T>
virtual void EZArrayVL< T >::assign ( size_type  size,
const T &  t = T() 
) const [inline, virtual]

Definition at line 45 of file EZArrayVL.h.

References EZMgrVL< T >::assign(), EZArrayVL< T >::m_begin, EZArrayVL< T >::m_mgr, EZArrayVL< T >::m_size, and t.

Referenced by EZArrayVL< T >::operator[]().

00047       {
00048          assert( (iterator)0 == m_begin ) ;
00049          m_size = size ;
00050          m_begin = m_mgr->assign( size, t ) ;
00051       }

template<class T>
const_iterator EZArrayVL< T >::begin (  )  const [inline]

Definition at line 53 of file EZArrayVL.h.

References EZArrayVL< T >::m_begin.

00053 { return m_begin ; } 

template<class T>
size_type EZArrayVL< T >::capacity (  )  const [inline]

Definition at line 73 of file EZArrayVL.h.

References EZArrayVL< T >::size().

00073 { return size() ; }

template<class T>
bool EZArrayVL< T >::empty ( void   )  const [inline]

Definition at line 69 of file EZArrayVL.h.

References EZArrayVL< T >::size().

00069 { return ( 0 == size() ) ;  }

template<class T>
const_iterator EZArrayVL< T >::end (  )  const [inline]

Definition at line 54 of file EZArrayVL.h.

References EZArrayVL< T >::m_begin, and EZArrayVL< T >::m_size.

00054 { return m_size + m_begin ; }

template<class T>
const_reference EZArrayVL< T >::operator[] ( const unsigned int  i  )  const [inline]

Definition at line 62 of file EZArrayVL.h.

References EZArrayVL< T >::m_begin.

00063       {
00064          return *( m_begin + i ) ;
00065       }

template<class T>
reference EZArrayVL< T >::operator[] ( const unsigned int  i  )  [inline]

Definition at line 56 of file EZArrayVL.h.

References EZArrayVL< T >::assign(), EZArrayVL< T >::m_begin, and EZArrayVL< T >::m_size.

00057       {
00058          if( (iterator)0 == m_begin ) assign( m_size ) ;
00059          return *( m_begin + i ) ; 
00060       }

template<class T>
virtual void EZArrayVL< T >::resize ( size_type  size  )  [inline, virtual]

Definition at line 43 of file EZArrayVL.h.

References EZMgrVL< T >::assign(), and EZArrayVL< T >::m_mgr.

00043 { m_mgr->assign( size ) ; }

template<class T>
size_type EZArrayVL< T >::size ( void   )  const [inline]

Definition at line 71 of file EZArrayVL.h.

References EZArrayVL< T >::m_begin.

Referenced by EZArrayVL< T >::capacity(), and EZArrayVL< T >::empty().

00071 { return ( m_end - m_begin ) ; }

template<class T>
bool EZArrayVL< T >::uninitialized (  )  const [inline]

Definition at line 67 of file EZArrayVL.h.

References EZArrayVL< T >::m_begin.

00067 { return ( 0 == m_begin ) ;  }


Member Data Documentation

template<class T>
iterator EZArrayVL< T >::m_begin [mutable, private]

Definition at line 82 of file EZArrayVL.h.

Referenced by EZArrayVL< T >::assign(), EZArrayVL< T >::begin(), EZArrayVL< T >::end(), EZArrayVL< T >::operator[](), EZArrayVL< T >::size(), and EZArrayVL< T >::uninitialized().

template<class T>
const MgrType* EZArrayVL< T >::m_mgr [private]

Definition at line 84 of file EZArrayVL.h.

Referenced by EZArrayVL< T >::assign(), and EZArrayVL< T >::resize().

template<class T>
size_type EZArrayVL< T >::m_size [private]

Definition at line 83 of file EZArrayVL.h.

Referenced by EZArrayVL< T >::assign(), EZArrayVL< T >::end(), and EZArrayVL< T >::operator[]().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:20:36 2009 for CMSSW by  doxygen 1.5.4