63#ifndef CALOUTILS_CALOLAYERCALCULATOR_H
64#define CALOUTILS_CALOLAYERCALCULATOR_H
67#include "CaloGeoHelpers/CaloSampling.h"
72#include "GaudiKernel/StatusCode.h"
115 template <
typename Iterator>
240 template <
typename Iterator>
253 template <
typename CONT,
typename RPAR,
typename COLL>
375template <
typename Iterator>
389 Helper h (*
this,
eta,
phi, deta, dphi, sampling, tofill, cell_container);
390 for (; beg != end; ++beg)
488template <
typename Iterator>
498template <
typename CONT,
typename RPAR,
typename COLL>
502 return it.getParameter();
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
Definition of CaloDetDescrManager.
CaloPhiRange class declaration.
Header file for AthHistogramAlgorithm.
Container class for CaloCell.
Data object for each calorimeter readout cell.
const_iterator to loop over cells belonging to a cluster
const CaloCellContainer * getCellContainer() const
Method to access underlying cell container.
This class provides the client interface for accessing the detector description information common to...
double etam() const
Data access.
double etamax() const
Get maximum value.
static double get_weight(Iterator it)
Get the weight from a cell iterator.
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.
double phis() const
Get the RMS size.
double etas() const
Get the RMS size.
CaloLayerCalculator()
Initialization.
double phimax() const
Get maximum value.
double m_etam
Layer variables.
double emax() const
Get the maximum energy.
void resetOnNegativeEnergy()
Reset output variables, but not m_em, allowing samplings to be negative.
double em() const
Get the total energy.
double phimr() const
Similar as phim, etam, phimax, etamax, but with raw quantities.
double phim() const
Get the mean layer value.
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.
Helper class for layer variable calculation.
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.