60 std::cout <<
"ERROR attempt to fill a cluster from different cell containers\n";
61 return StatusCode::FAILURE;
70 eta,
phi, deta, dphi, sampling, tofill);
72 return StatusCode::SUCCESS;
194 double etac =
cell->eta();
195 double phic =
cell->phi();
196 double etar =
cell->caloDDE()->eta_raw();
197 double phir =
cell->caloDDE()->phi_raw();
209 double ene =
cell->energy() * weight;
211 if (ene >
m_calc.m_emax) {
223 m_s20 += ene*etac*etac;
225 m_s02 += ene*dphic*dphic;
278 std::abs (
m_calc.m_etam) > 10 ||
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
Calculate total energy, position, etc. for a given layer of a cluster.
Container class for CaloCell.
list_iterator end() const
void select(double eta, double phi, double deta, double dphi)
list_iterator begin() const
Data object for each calorimeter readout cell.
const CaloCellContainer * getCellContainer() const
Method to access underlying cell container.
This class provides the client interface for accessing the detector description information common to...
void fill(Iterator beg, Iterator end, double eta, double phi, double deta, double dphi, CaloSampling::CaloSample sampling, xAOD::CaloCluster *tofill=0)
Calculate layer variables from cells in a list.
CaloLayerCalculator()
Initialization.
double m_etam
Layer variables.
void resetOnNegativeEnergy()
Reset output variables, but not m_em, allowing samplings to be negative.
This class defines the phi convention for Calorimeters.
static double fix(double phi)
static double diff(double phi1, double phi2)
simple phi1 - phi2 calculation, but result is fixed to respect range.
const CaloClusterCellLink * getCellLinks() const
Get a pointer to the CaloClusterCellLink object (const version)
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
const CaloCellContainer * m_cell_container
CaloSampling::CaloSample m_sampling
void cell(const CaloCell *cell, double weight)
Accumulate results for another cell.
xAOD::CaloCluster * m_tofill
Helper(CaloLayerCalculator &calc, double eta, double phi, double deta, double dphi, CaloSampling::CaloSample sampling, xAOD::CaloCluster *tofill, const CaloCellContainer *cell_container)
Initialize for doing layer variable calculation.
double m_s00
Temporary variables used to accumulate the results.
~Helper()
Calculate the layer variables from the accumulated cells The variables in the parent CaloLayerCalcula...
CaloLayerCalculator & m_calc
These members hold the values passed to the constructor.