53 if ((
int)theIndex < 0) abort();
56 if ( this->
contains(theContainer,theIndex) )
97 this->
updateKine((theContainer->operator[])(theIndex),weight);
119 if ((
int)theIndex < 0) abort();
121 this->
updateKine((theContainer->operator[])(theIndex),weight);
130 if ((
int)theIndex < 0) abort();
142 if ((
int)theIndex < 0) abort();
143 this->
insertElement(theContainer,theIndex,sg,weight,size_hint);
153 if ((
int)theIndex < 0) abort();
177 if ( this->
contains(theContainer,theIndex) )
184 this->
remove(theContainer,theIndex);
207 this->
reweightCell((pContainer->operator[])(refIndex),weight);
237 return this->
contains(theContainer,theIndex)
261 return this->
getIndex(theCell,theIndex);
272 return this->
begin();
Container class for CaloCell.
Data object for each calorimeter readout cell.
void setRecoStatus(CaloRecoStatus::StatusIndicator recStatus)
Set the reconstruction status.
void addUniqueCellNoKine(const CaloCellContainer *theContainer, index_type theIndex, double weight, size_t size_hint=0)
Add a cell (very fast)
CaloEnergyCluster()
Default constructor.
Navigable< CaloCellContainer, double >::object_iter cell_iterator
Iterator type for cell store.
const CaloCellContainer * getCellContainer(const CaloCell *theCell) const
Retrieve the pointer to the original cell container for a given cell.
unsigned int getNumberOfCells() const
Return the number of cells in the store.
void removeCells()
Remove all cells without kinematic update.
Navigable< CaloCellContainer, double >::external_index_type index_type
Index type for CaloCellContainer.
void addCell(const CaloCellContainer *theContainer, const CaloCell *theCell, double weight)
Add a cell with global kinematic update (slow)
const CaloRecoStatus & getRecoStatus() const
Retrieve the reconstruction status.
double getCellWeight(const CaloCell *theCell) const
Retrieve the kinematic weight of a given cell.
void reweightCell(const CaloCell *theCell, double weight)
Reweight a cell with kinematic update.
virtual void updateKine(const CaloCell *theCell, double weight)=0
Interface to kinematic update implementation.
void removeCell(const CaloCell *theCell)
Remove a cell with kinematic update.
cell_iterator cell_begin() const
Retrieve a STL-type begin() iterator for the cell store.
cell_iterator cell_end() const
Retrieve a STL-type end() iterator for the cell store.
virtual ~CaloEnergyCluster()
Destructor.
bool getCellIndex(const CaloCell *theCell, index_type &theIndex) const
Retrieve the index of a given cell in the cell container.
virtual void addUniqueCell(const CaloCellContainer *theContainer, index_type theIndex, double weight, size_t size_hint=0)
Add a cell with global kinematic update (fast)
CaloRecoStatus m_status
Calorimeter reconstruction status.
reconstruction status indicator
StatusIndicator
reconstruction status word
ElementLink implementation for ROOT usage.
virtual unsigned int size() const
virtual object_iter begin() const
bool remove(const constituent_type *aConstituent)
double getParameter(const constituent_type *aConstituent) const
bool contains(const constituent_type *aConstituent) const
void reweight(const constituent_type *constituentObject, const double &objectParameter=double())
void insertElement(const CaloCellContainer *objectContainer, const constituent_type *constituentObject, const double &objectParameter=double(), size_t sizeHint=0)
virtual object_iter end() const
bool getIndex(const constituent_type *aConstituent, external_index_type &theIndex) const
const CaloCellContainer * getContainer(const constituent_type *aConstituent) const
P4EEtaPhiM(const double e, const double eta, const double phi, const double m)
constructor with all data members