|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef CALOCALIBHITREC_CALOCALIBCLUSTERMOMENTSMAKER2_H
6 #define CALOCALIBHITREC_CALOCALIBCLUSTERMOMENTSMAKER2_H
25 #include "GaudiKernel/ToolHandle.h"
28 #include "CaloGeoHelpers/CaloSampling.h"
58 class MyCellInfo :
public std::vector<std::pair<int, double> > {
74 std::array<double,CaloSampling::Unknown+1>
engSmp;
75 void Add(
double eng,
int nsmp)
82 void Add(
double eng,
int nsmp,
int pid = 0)
99 typedef std::pair<std::string,xAOD::CaloCluster::MomentType>
109 const IInterface*
parent);
195 std::array<std::vector<std::vector<CalibHitIPhiIEtaRange>>,3>
m_i_phi_eta;
220 #endif // CALOCALIBCLUSTERMOMENTSMAKER2_H
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticleContainerKey
ReadHandleKey for truth particle container.
const CaloDM_ID * m_caloDM_ID
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *theClusColl) const override
Execute on an entire collection of clusters.
std::vector< moment_name_pair > moment_name_vector
vector of pairs defined above.
std::pair< std::string, xAOD::CaloCluster::MomentType > moment_name_pair
typedef for a pair to index the enums defined in CaloClusterMoment with a string.
std::array< std::vector< std::vector< CalibHitIPhiIEtaRange > >, 3 > m_i_phi_eta
void Add(double eng, int nsmp)
std::set< xAOD::CaloCluster::MomentType > m_momentsAOD
set holding the list of moment enums which go in the first store i.e.
std::set< moment_name_pair > moment_name_set
set of pairs defined above.
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *collection) const =0
Execute on an entire collection of clusters.
const CaloCell_ID * m_calo_id
std::vector< std::string > m_momentsNamesAOD
vector holding the list of moment names which go in the first store i.e.
std::array< double, CaloDmDescrArea::DMA_MAX > engCalibDeadInArea
void Add(double eng, int nsmp, int pid=0)
std::map< Identifier, MyCellInfo > CellInfoSet_t
CaloCalibClusterMomentsMaker2(const std::string &type, const std::string &name, const IInterface *parent)
SG::ReadHandleKeyArray< CaloCalibrationHitContainer > m_DMCalibrationHitContainerNames
vector of dead material calibration hit container names to use.
std::vector< MyClusInfo > ClusInfo_t
::StatusCode StatusCode
StatusCode definition for legacy code.
void Add(const MyCellInfo &other)
Helper class for offline cell identifiers.
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
std::array< double, CaloSampling::Unknown+1 > engSmp
bool m_doDeadEnergySharing
ClusCalibEnergy engCalibIn
const CaloDmDescrManager * m_caloDmDescrManager
SG::ReadHandleKeyArray< CaloCalibrationHitContainer > m_CalibrationHitContainerNames
vector of calibration hit container names to use.
Calculate calibration hit based moments for CaloCluster objects using Primary Particle ID.
MyCellInfo(int iClus, double w)
Class to store cluster number and weight for calorimeter cells.
Base class for cluster processing tools called from CaloClusterMaker.
virtual StatusCode initialize() override
std::atomic< bool > m_foundAllContainers
Class to define range of valid bins in eta x phi plane.
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloDetDescrMgrKey
Conditions Handle Key to access the CaloDetDescrManager.
moment_name_vector m_validNames
vector holding the names of valid moments which can be calculated.
static double angle_mollier_factor(double x)
Class to store cluster's calibration energies.
This class provides the client interface for accessing the detector description information common to...
std::map< int, ClusCalibEnergy > engCalibParticle
Helper class for Calo Dead Material offline identifiers.
std::vector< std::string > m_momentsNames
vector holding the input list of names of moments to calculate.
moment_name_set m_validMoments
set of moments which will be calculated.