|
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"
66 for (
const std::pair<int, double>&
p :
other.m_ClusWeights) {
85 void Add(
double eng,
int nsmp)
97 void Add(
double eng,
int nsmp,
int pid = 0)
102 pos->second.Add(eng, nsmp);
121 typedef std::pair<std::string,xAOD::CaloCluster::MomentType>
131 const IInterface*
parent);
217 std::array<std::vector<std::vector<CalibHitIPhiIEtaRange>>,3>
m_i_phi_eta;
240 void get_calib_frac(
const std::map<unsigned int,int>& truthBarcodeToPdgCodeMap,
241 const MyClusInfo& clusInfo, std::vector<double> &engFrac)
const;
244 #endif // CALOCALIBCLUSTERMOMENTSMAKER2_H
JetConstituentVector::iterator iterator
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.
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
std::vector< double > engCalibDeadInArea
::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.
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::vector< double > engSmp
std::map< int, ClusCalibEnergy > engCalibParticle
Helper class for Calo Dead Material offline identifiers.
std::vector< std::pair< int, double > > m_ClusWeights
void get_calib_frac(const std::map< unsigned int, int > &truthBarcodeToPdgCodeMap, const MyClusInfo &clusInfo, std::vector< double > &engFrac) const
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.