G4TDigiCollection< T > Class Template Reference

#include <G4TDigiCollection.hh>

Inheritance diagram for G4TDigiCollection< T >:

G4DigiCollection G4VDigiCollection

Public Member Functions

 G4TDigiCollection ()
 G4TDigiCollection (G4String detName, G4String colNam)
virtual ~G4TDigiCollection ()
G4int operator== (const G4TDigiCollection &right) const
void * operator new (size_t)
void operator delete (void *aDC)
virtual void DrawAllDigi ()
virtual void PrintAllDigi ()
T * operator[] (size_t i) const
std::vector< T * > * GetVector () const
G4int insert (T *aHit)
G4int entries () const
virtual G4VDigiGetDigi (size_t i) const
virtual size_t GetSize () const

Detailed Description

template<class T>
class G4TDigiCollection< T >

Definition at line 66 of file G4TDigiCollection.hh.


Constructor & Destructor Documentation

template<class T>
G4TDigiCollection< T >::G4TDigiCollection (  ) 

Definition at line 129 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00130 { 
00131   std::vector<T*> * theDigiCollection
00132     = new std::vector<T*>;
00133   theCollection = (void*)theDigiCollection;
00134 }

template<class T>
G4TDigiCollection< T >::G4TDigiCollection ( G4String  detName,
G4String  colNam 
)

Definition at line 136 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00137 : G4DigiCollection(detName,colNam)
00138 { 
00139   std::vector<T*> * theDigiCollection
00140     = new std::vector<T*>;
00141   theCollection = (void*)theDigiCollection;
00142 }

template<class T>
G4TDigiCollection< T >::~G4TDigiCollection (  )  [virtual]

Definition at line 144 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00145 {
00146   std::vector<T*> * theDigiCollection 
00147     = (std::vector<T*>*)theCollection;
00148   //theDigiCollection->clearAndDestroy();
00149   for(size_t i=0;i<theDigiCollection->size();i++)
00150   { delete (*theDigiCollection)[i]; }
00151   theDigiCollection->clear();
00152   delete theDigiCollection;
00153 }


Member Function Documentation

template<class T>
void G4TDigiCollection< T >::DrawAllDigi (  )  [virtual]

Reimplemented from G4VDigiCollection.

Definition at line 158 of file G4TDigiCollection.hh.

References CLHEP::detail::n, and G4DigiCollection::theCollection.

00159 {
00160   std::vector<T*> * theDigiCollection 
00161     = (std::vector<T*>*)theCollection;
00162   size_t n = theDigiCollection->size();
00163   for(size_t i=0;i<n;i++)
00164   { (*theDigiCollection)[i]->Draw(); }
00165 }

template<class T>
G4int G4TDigiCollection< T >::entries (  )  const [inline]

Definition at line 101 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00102       {
00103         std::vector<T*>*theDigiCollection 
00104           = (std::vector<T*>*)theCollection;
00105         return theDigiCollection->size();
00106       }

template<class T>
virtual G4VDigi* G4TDigiCollection< T >::GetDigi ( size_t  i  )  const [inline, virtual]

Reimplemented from G4VDigiCollection.

Definition at line 110 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00111       { return (*((std::vector<T*>*)theCollection))[i]; }

template<class T>
virtual size_t G4TDigiCollection< T >::GetSize (  )  const [inline, virtual]

Reimplemented from G4VDigiCollection.

Definition at line 112 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00113       { return ((std::vector<T*>*)theCollection)->size(); }

template<class T>
std::vector<T*>* G4TDigiCollection< T >::GetVector (  )  const [inline]

Definition at line 89 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00090       { return (std::vector<T*>*)theCollection; }

template<class T>
G4int G4TDigiCollection< T >::insert ( T *  aHit  )  [inline]

Definition at line 92 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00093       {
00094         std::vector<T*>*theDigiCollection 
00095           = (std::vector<T*>*)theCollection;
00096         theDigiCollection->push_back(aHit);
00097         return theDigiCollection->size();
00098       }

template<class T>
void G4TDigiCollection< T >::operator delete ( void *  aDC  )  [inline]

Definition at line 124 of file G4TDigiCollection.hh.

References aDCAllocator.

00125 {
00126   aDCAllocator.FreeSingle((G4DigiCollection*)aDC);
00127 }

template<class T>
void * G4TDigiCollection< T >::operator new ( size_t   )  [inline]

Definition at line 117 of file G4TDigiCollection.hh.

References aDCAllocator.

00118 {
00119   void* aDC;
00120   aDC = (void*)aDCAllocator.MallocSingle();
00121   return aDC;
00122 }

template<class T>
G4int G4TDigiCollection< T >::operator== ( const G4TDigiCollection< T > &  right  )  const

template<class T>
T* G4TDigiCollection< T >::operator[] ( size_t  i  )  const [inline]

Definition at line 86 of file G4TDigiCollection.hh.

References G4DigiCollection::theCollection.

00087       { return (*((std::vector<T*>*)theCollection))[i]; }

template<class T>
void G4TDigiCollection< T >::PrintAllDigi (  )  [virtual]

Reimplemented from G4VDigiCollection.

Definition at line 167 of file G4TDigiCollection.hh.

References CLHEP::detail::n, and G4DigiCollection::theCollection.

00168 {
00169   std::vector<T*> * theDigiCollection 
00170     = (std::vector<T*>*)theCollection;
00171   size_t n = theDigiCollection->size();
00172   for(size_t i=0;i<n;i++)
00173   { (*theDigiCollection)[i]->Print(); }
00174 }


The documentation for this class was generated from the following file:
Generated on Mon May 27 17:53:28 2013 for Geant4 by  doxygen 1.4.7