#include <emcTowerContainerT.h>
Inherits emcTowerContainer.
Inheritance diagram for emcTowerContainerT< T >:
Using this class creating a new container (which is usually driven by the need to have a new version of the content class emcTowerContent) is very easy. Assuming you want to define version 123 (!) make a new emcTowerContainerv123.h file containing the following lines, defining a typedef using the template :
#ifndef __EMCTOWERCONTAINERV123_H__ #define __EMCTOWERCONTAINERV123_H__ #ifndef __EMCTOWERCONTAINERT_H__ #include "emcTowerContainerT.h" #endif #ifndef __EMCTOWERCONTENTV123_H__ #include "emcTowerContentv123.h" #endif typedef emcTowerContainerT<emcTowerContentv123> emcTowerContainerv123; #endif
And that's it !
Definition at line 39 of file emcTowerContainerT.h.
Public Member Functions | |
emcTowerContainerT () | |
emcTowerContainerT (unsigned int defaultsize) | |
emcTowerContainerT (const emcTowerContainerT &) | |
emcTowerContainerT & | operator= (const emcTowerContainerT &) |
emcTowerContainerT * | clone (void) const |
Make a copy of this object. | |
emcTowerContainerT * | create (void) const |
Make an empty copy of this object (i.e. copy only the type). | |
virtual | ~emcTowerContainerT () |
unsigned int | capacity (void) const |
the size you'll never exceed for this object. | |
T * | addTower (unsigned int i) |
Add a new (using default ctor) tower. | |
T * | addTower (unsigned int i, const emcTowerContent &) |
Add a new (using copy ctor) tower. | |
T * | findTower (int towerID) const |
Return a given tower (or 0 if not found) by its towerid. | |
T * | getTower (unsigned int i) const |
Return a given tower (or 0 if not found) by its index. | |
void | identify (std::ostream &os=std::cout) const |
int | isValid () const |
bool | removeTower (unsigned int i) |
void | Reset () |
bool | resize (unsigned int newsize) |
Set a new size for this container. Old data are lost. | |
unsigned int | size (void) const |
the actual size of the object. | |
Protected Attributes | |
TClonesArray * | fEmcTowers |
Private Member Functions | |
void | allocate (unsigned int thesize) |
void | copy (emcTowerContainerT &dest) const |
bool | expand (unsigned int) |
bool | expand_for (unsigned int) |
Private Attributes | |
std::map< int, int > | fTowerIdToIndex |
bool | fTowerIdToIndexIsUpToDate |
Static Private Attributes | |
static const unsigned int | fgDefaultSize = 1000 |
static const unsigned int | fgMaxSize = 24768 |
|
Definition at line 115 of file emcTowerContainerT.h. References emcTowerContainerT< T >::allocate(), and emcTowerContainerT< T >::fgDefaultSize. |
|
Definition at line 124 of file emcTowerContainerT.h. References emcTowerContainerT< T >::allocate(). |
|
Definition at line 134 of file emcTowerContainerT.h. References emcTowerContainerT< T >::copy(). |
|
Definition at line 156 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers. |
|
Add a new (using copy ctor) tower. t must be of a compatible type, otherwise this will return 0. Reimplemented from emcTowerContainer. Definition at line 184 of file emcTowerContainerT.h. References emcTowerContainerT< T >::capacity(), emcTowerContainerT< T >::expand_for(), emcTowerContainerT< T >::fTowerIdToIndexIsUpToDate, and test(). |
|
Add a new (using default ctor) tower.
Reimplemented from emcTowerContainer. Definition at line 164 of file emcTowerContainerT.h. References emcTowerContainerT< T >::capacity(), emcTowerContainerT< T >::expand_for(), and emcTowerContainerT< T >::fTowerIdToIndexIsUpToDate. Referenced by emcTowerContainerT< T >::copy(). |
|
Definition at line 213 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers, and emcTowerContainerT< T >::fTowerIdToIndexIsUpToDate. Referenced by emcTowerContainerT< T >::copy(), and emcTowerContainerT< T >::emcTowerContainerT(). |
|
the size you'll never exceed for this object.
Reimplemented from emcTowerContainer. Definition at line 223 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers. Referenced by emcTowerContainerT< T >::addTower(), and emcTowerContainerT< T >::expand_for(). |
|
Make a copy of this object.
Reimplemented from emcTowerContainer. Definition at line 231 of file emcTowerContainerT.h. |
|
Definition at line 247 of file emcTowerContainerT.h. References emcTowerContainerT< T >::addTower(), emcTowerContainerT< T >::allocate(), emcTowerContainerT< T >::fEmcTowers, emcTowerContainerT< T >::getTower(), emcTowerContainerT< T >::Reset(), and emcTowerContainerT< T >::size(). Referenced by emcTowerContainerT< T >::emcTowerContainerT(), and emcTowerContainerT< T >::operator=(). |
|
Make an empty copy of this object (i.e. copy only the type).
Reimplemented from emcTowerContainer. Definition at line 239 of file emcTowerContainerT.h. |
|
Definition at line 275 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers, and emcTowerContainerT< T >::fgMaxSize. Referenced by emcTowerContainerT< T >::expand_for(), and emcTowerContainerT< T >::resize(). |
|
Definition at line 296 of file emcTowerContainerT.h. References emcTowerContainerT< T >::capacity(), emcTowerContainerT< T >::expand(), emcTowerContainerT< T >::fgMaxSize, and min. Referenced by emcTowerContainerT< T >::addTower(). |
|
Return a given tower (or 0 if not found) by its towerid.
Reimplemented from emcTowerContainer. Definition at line 318 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fTowerIdToIndex, emcTowerContainerT< T >::fTowerIdToIndexIsUpToDate, emcTowerContainerT< T >::getTower(), and emcTowerContainerT< T >::size(). |
|
Return a given tower (or 0 if not found) by its index.
Reimplemented from emcTowerContainer. Definition at line 344 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers. Referenced by emcTowerContainerT< T >::copy(), and emcTowerContainerT< T >::findTower(). |
|
Reimplemented from emcTowerContainer. |
|
Reimplemented from emcTowerContainer. Definition at line 363 of file emcTowerContainerT.h. |
|
Definition at line 145 of file emcTowerContainerT.h. References emcTowerContainerT< T >::copy(). |
|
Reimplemented from emcTowerContainer. Definition at line 381 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers, emcTowerContainerT< T >::fTowerIdToIndexIsUpToDate, and emcTowerContainerT< T >::size(). |
|
Reimplemented from emcTowerContainer. Definition at line 371 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers, emcTowerContainerT< T >::fTowerIdToIndex, and emcTowerContainerT< T >::fTowerIdToIndexIsUpToDate. Referenced by emcTowerContainerT< T >::copy(), and emcTowerContainerT< T >::resize(). |
|
Set a new size for this container. Old data are lost.
Reimplemented from emcTowerContainer. Definition at line 399 of file emcTowerContainerT.h. References emcTowerContainerT< T >::expand(), emcTowerContainerT< T >::fEmcTowers, emcTowerContainerT< T >::Reset(), and emcTowerContainerT< T >::size(). |
|
the actual size of the object.
Reimplemented from emcTowerContainer. Definition at line 416 of file emcTowerContainerT.h. References emcTowerContainerT< T >::fEmcTowers. Referenced by emcTowerContainerT< T >::copy(), emcTowerContainerT< T >::findTower(), emcTowerContainerT< T >::removeTower(), and emcTowerContainerT< T >::resize(). |
|
|
Definition at line 89 of file emcTowerContainerT.h. Referenced by emcTowerContainerT< T >::emcTowerContainerT(). |
|
Definition at line 90 of file emcTowerContainerT.h. Referenced by emcTowerContainerT< T >::expand(), and emcTowerContainerT< T >::expand_for(). |
|
Definition at line 92 of file emcTowerContainerT.h. Referenced by emcTowerContainerT< T >::findTower(), and emcTowerContainerT< T >::Reset(). |
|
Definition at line 93 of file emcTowerContainerT.h. Referenced by emcTowerContainerT< T >::addTower(), emcTowerContainerT< T >::allocate(), emcTowerContainerT< T >::findTower(), emcTowerContainerT< T >::removeTower(), and emcTowerContainerT< T >::Reset(). |