ATLAS Offline Software
Loading...
Searching...
No Matches
CaloTopoEMlayers Class Reference

#include <CaloTopoEMlayers.h>

Inheritance diagram for CaloTopoEMlayers:
Collaboration diagram for CaloTopoEMlayers:

Public Types

typedef std::array< std::pair< double, double >, 4 > WindowArray_t
 Holds the per-layer window sizes.

Public Member Functions

 CaloTopoEMlayers (const std::string &type, const std::string &name, const IInterface *parent)
virtual StatusCode initialize () override
 Standard Gaudi initialize method.
virtual void get_seed (CaloClusterCorr::SamplingHelper &helper, const xAOD::CaloCluster *cluster, double &eta, double &phi) const override
virtual WindowArray_t initWindows (const int neta, const int nphi, const double detas2, const double dphis2) const override
 Set up layer-by-layer cluster window sizes.
virtual void makeCorrection (const Context &myctx, xAOD::CaloCluster *cluster) const override
 CaloClusterCorrection virtual method.
void makeCorrection (const EventContext &ctx, xAOD::CaloCluster *cluster) const
virtual StatusCode setCaloCellContainerName (const std::string &name) override
 Change the name of the CaloCellContainer used by this tool.
virtual void setsample (xAOD::CaloCluster *cluster, CaloSampling::CaloSample sampling, float em, float etam, float phim, float emax, float etamax, float phimax, float etas, float phis) const
virtual void setenergy (xAOD::CaloCluster *cluster, float energy) const
StatusCode execute (const EventContext &ctx, xAOD::CaloCluster *cluster) const override
virtual StatusCode execute (const EventContext &ctx, xAOD::CaloClusterContainer *collection) const
 Execute on an entire collection of clusters.

Public Attributes

 cls = CompFactory.CaloTopoEMlayers
list CaloTopoEMlayers_versions

Protected Attributes

double m_deta0 = 0.0
 Cell window sizes in each sampling.
double m_deta1 = 0.0
double m_deta2 = 0.0
double m_deta3 = 0.0
double m_dphi0 = 0.0
double m_dphi1 = 0.0
double m_dphi2 = 0.0
double m_dphi3 = 0.0
Gaudi::Property< int > m_neta {this, "eta_size", 5}
 \(\eta\times\phi\) cluster size. These are properties.
Gaudi::Property< int > m_nphi {this, "phi_size", 5}
Gaudi::Property< bool > m_fill_cluster {this, "fill_cluster", true}
 Fill-cluster flag.
Gaudi::Property< bool > m_setRawState {this, "set_raw_state", true}
 Property to tell if the raw energy, eta0 and phi0 should be saved as uncalibrated signal state.
SG::ReadCondHandleKey< CaloDetDescrManagerm_caloMgrKey {this,"CaloDetDescrManager", "CaloDetDescrManager"}

Private Member Functions

 CaloTopoEMlayers ()=delete
void makeCorrection1 (const EventContext &ctx, const CaloDetDescrManager &dd_man, CaloClusterCorr::SamplingHelper &helper, double eta, double phi, const CaloSampling::CaloSample samplings[4]) const
void makeCorrection2 (const EventContext &ctx, const CaloDetDescrManager &dd_man, CaloClusterCorr::SamplingHelper &helper) const

Private Attributes

SG::ReadHandleKey< CaloCellContainerm_cellsName {this, "cells_name", "AllCalo"}
 The StoreGate key for the container of our input cells.

Detailed Description

Definition at line 39 of file CaloTopoEMlayers.h.

Member Typedef Documentation

◆ WindowArray_t

typedef std::array<std::pair<double, double>, 4> CaloFillRectangularCluster::WindowArray_t
inherited

Holds the per-layer window sizes.

Definition at line 120 of file CaloFillRectangularCluster.h.

Constructor & Destructor Documentation

◆ CaloTopoEMlayers() [1/2]

CaloTopoEMlayers::CaloTopoEMlayers ( const std::string & type,
const std::string & name,
const IInterface * parent )

Definition at line 46 of file CaloTopoEMlayers.cxx.

49 : CaloFillRectangularCluster(type, name, parent)
50{
51 m_fill_cluster = false;
52}

◆ CaloTopoEMlayers() [2/2]

CaloTopoEMlayers::CaloTopoEMlayers ( )
privatedelete

Member Function Documentation

◆ execute() [1/2]

StatusCode CaloClusterCorrection::execute ( const EventContext & ctx,
xAOD::CaloCluster * cluster ) const
overrideinherited

Definition at line 52 of file CaloClusterCorrection.cxx.

54{
55 this->makeCorrection (context(ctx), cluster);
56
57#if 0
58 ATH_MSG_DEBUG( " ...... e, et " << cluster->e() << " " << cluster->et() << endmsg);
59 ATH_MSG_DEBUG( " ...... eta, etaBE, etaSmp " << cluster->eta() << " " << cluster->etaBE(2)
60 << " " << cluster->etaSample(CaloSampling::EMB1)
61 << " " << cluster->etaSample(CaloSampling::EMB2)
62 << " " << cluster->etaSample(CaloSampling::EMB3) << endmsg);
63 ATH_MSG_DEBUG( " ...... phi, phiBE, phiSmp " << cluster->phi() << " " << cluster->phiBE(2)
64 << " " << cluster->phiSample(CaloSampling::EMB1)
65 << " " << cluster->phiSample(CaloSampling::EMB2)
66 << " " << cluster->phiSample(CaloSampling::EMB3) << endmsg);
67#endif
68
69 return StatusCode::SUCCESS;
70}
#define endmsg
#define ATH_MSG_DEBUG(x)
virtual void makeCorrection(const Context &myctx, xAOD::CaloCluster *) const =0
float phiBE(const unsigned layer) const
Get the phi in one layer of the EM Calo.
float phiSample(const CaloSample sampling) const
Retrieve barycenter in a given sample.
virtual double eta() const
The pseudorapidity ( ) of the particle.
virtual double e() const
The total energy of the particle.
virtual double phi() const
The azimuthal angle ( ) of the particle.
float etaSample(const CaloSample sampling) const
Retrieve barycenter in a given sample.
float etaBE(const unsigned layer) const
Get the eta in one layer of the EM Calo.

◆ execute() [2/2]

StatusCode CaloClusterProcessor::execute ( const EventContext & ctx,
xAOD::CaloClusterContainer * collection ) const
inherited

Execute on an entire collection of clusters.

Parameters
collectionThe container of clusters.

This will iterate over all the clusters in collection and call execute on each one individually.

Parameters
collectionThe container of clusters.
ctxThe event context.

This will iterate over all the clusters in collection and call execute on each one individually.

Definition at line 65 of file CaloClusterProcessor.cxx.

46{
47 for (xAOD::CaloCluster* clu : *collection) {
48 ATH_CHECK( execute (ctx, clu) );
49 }
50 return StatusCode::SUCCESS;
51}
#define ATH_CHECK
Evaluate an expression and check for errors.
StatusCode execute(const EventContext &ctx, xAOD::CaloCluster *cluster) const override
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.

◆ get_seed()

void CaloTopoEMlayers::get_seed ( CaloClusterCorr::SamplingHelper & helper,
const xAOD::CaloCluster * cluster,
double & eta,
double & phi ) const
overridevirtual

Reimplemented from CaloFillRectangularCluster.

Definition at line 64 of file CaloTopoEMlayers.cxx.

68{
69 eta = cluster->eta();
70 phi = cluster->phi();
71}
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method

◆ initialize()

StatusCode CaloTopoEMlayers::initialize ( )
overridevirtual

Standard Gaudi initialize method.

Derived classes can extend this to change the sampling window sizes.

Reimplemented from CaloFillRectangularCluster.

Definition at line 56 of file CaloTopoEMlayers.cxx.

57{
59
60 return StatusCode::SUCCESS;
61}
#define CHECK(...)
Evaluate an expression and check for errors.
virtual StatusCode initialize() override
Standard Gaudi initialize method.

◆ initWindows()

CaloFillRectangularCluster::WindowArray_t CaloTopoEMlayers::initWindows ( const int neta,
const int nphi,
const double detas2,
const double dphis2 ) const
overridevirtual

Set up layer-by-layer cluster window sizes.

Parameters
netaCluster eta size.
nphiCluster phi size.
detas2Middle layer cell eta size.
detas2Middle layer cell phi size.

Returns per-layer array of deta,dphi pairs.

Reimplemented from CaloFillRectangularCluster.

Definition at line 84 of file CaloTopoEMlayers.cxx.

88{
90
91 float f_neta = (float)neta;
92 float f_nphi = (float)nphi;
93
94 w[0].first = detas2*f_neta;
95 w[1].first = w[0].first;
96 w[2].first = w[0].first;
97 w[3].first = w[0].first;
98
99 w[0].second = dphis2*f_nphi;
100 w[1].second = w[0].second;
101 w[2].second = w[0].second;
102 w[3].second = w[0].second;
103
104 return w;
105}
std::array< std::pair< double, double >, 4 > WindowArray_t
Holds the per-layer window sizes.

◆ makeCorrection() [1/2]

virtual void CaloFillRectangularCluster::makeCorrection ( const Context & myctx,
xAOD::CaloCluster * cluster ) const
overridevirtualinherited

CaloClusterCorrection virtual method.

Parameters
myctxToolWithConstants context.
clusterThe cluster on which to operate.

Implements CaloClusterCorrection.

◆ makeCorrection() [2/2]

void CaloFillRectangularCluster::makeCorrection ( const EventContext & ctx,
xAOD::CaloCluster * cluster ) const
inlineinherited

Definition at line 90 of file CaloFillRectangularCluster.h.

92 {
93 return makeCorrection (context(ctx), cluster);
94 }
virtual void makeCorrection(const Context &myctx, xAOD::CaloCluster *cluster) const override
CaloClusterCorrection virtual method.

◆ makeCorrection1()

void CaloFillRectangularCluster::makeCorrection1 ( const EventContext & ctx,
const CaloDetDescrManager & dd_man,
CaloClusterCorr::SamplingHelper & helper,
double eta,
double phi,
const CaloSampling::CaloSample samplings[4] ) const
privateinherited

Definition at line 817 of file CaloFillRectangularCluster.cxx.

825{
826 // Do sampling 2.
827 helper.calculate_and_set (eta, phi, 2, -1, samplings, true);
828 // the etam and phim of the helper are now filled with etamr and phimr from the CaloLayerCalculator
829 double eta2 = helper.etam();
830 double phi2 = helper.phim();
831 // Make sure that we have a seed. Assume the input cluster has a good (eta,phi)
832 if (eta2 == -999.) eta2 = eta;
833 if (phi2 == -999.) phi2 = phi;
834
835 // Now do sampling 1; use the result from sampling 2 as the seed.
836 helper.calculate_and_set (eta2, phi2, 1, -1, samplings);
837 double eta1 = helper.etam();
838 double phi1 = helper.phim();
839 bool refine = true;
840 if (eta1 == -999. || phi1 == -999.) {
841 // Make sure that we have a seed. If eta,phi1 not OK, (e.g. deadOTX), take (eta2,phi2)
842 if (eta1 == -999.) eta1 = eta2;
843 if (phi1 == -999.) phi1 = phi2;
844 refine = false;
845 }
846
847 // For some silly reason, we have TWO different sampling enums.
848 // The clusters use one, the detector description uses the other.
850 if (samplings[1] == CaloSampling::EMB1)
851 xsample = CaloCell_ID::EMB1;
852 else
853 xsample = CaloCell_ID::EME1;
854
855 // Now refine the eta position using +-1 strip around hot cell
856 // This only makes sense if the previous step was OK
857 if (refine) {
858 double detastr, dphistr;
859 CaloClusterCorr::etaphi_range (dd_man,helper.etamax(), helper.phimax(),
860 xsample,
861 detastr, dphistr);
862
863 if (detastr > 0 && dphistr > 0) {
864 helper.calculate_cluster (helper.etamax(), helper.phimax(),
865 detastr, dphistr, samplings[1]);
866
867 if (helper.etam()!=-999.) {
868 eta1 = helper.etam();
869 double eta1r = helper.etareal();
870 helper.cluster()->setEta(samplings[1], eta1r);
871 }
872 }
873 }
874
875 // Now do sampling 0 using the eta1 point:
876 helper.calculate_and_set (eta1, phi2, 0, 1, samplings);
877
878 // Do for sampling 3 (using the sampling 2 seed).
879 helper.calculate_and_set (eta2, phi2, 3, -1, samplings);
880
881 // Crack;
882 // Check if the cluster has TileGap3 sampling and avoid to calculate the TileGap3 energy twice
883 if ( helper.cluster()->hasSampling(CaloSampling::TileGap3) && samplings[0]==CaloSampling::PreSamplerE )
884 {
885 //By default, use the original cell container
886 const CaloCellContainer* cc = helper.cluster()->getCellLinks()->getCellContainer();
887
888 //Leave the option to use a different cell container
889 if (!m_cellsName.key().empty()) {
890 SG::ReadHandle<CaloCellContainer> cchand (m_cellsName, ctx);
891 if (!cchand.isValid()) {
892 REPORT_ERROR(StatusCode::FAILURE)
893 << "Can't retrieve cell container " << m_cellsName.key();
894 return;
895 }
896 cc = cchand.cptr();
897 }
898
899 if(!cc) //cover the case when the cluster does not give a cell container and the name is empty
900 {
901 REPORT_ERROR(StatusCode::FAILURE)
902 << "Can't find cell container; cluster does not give a cell container";
903 return;
904 }
905
906 // Add up the tile scintillator energy in the region around the cluster.
907 double eh_scint = 0;
909 cc->beginConstCalo(CaloCell_ID::TILE);
911 cc->endConstCalo(CaloCell_ID::TILE);
912
913 for ( ; f_cell!=l_cell; ++f_cell)
914 {
915 const CaloCell* cell = (*f_cell) ;
916
917 if (CaloCell_ID::TileGap3 == cell->caloDDE()->getSampling()) {
918 // consider only E4 cell
919 if( fabs(cell->eta()) < 1.4 || fabs(cell->eta()) > 1.6 ) continue;
920 double phic = cell->phi();
921 double etac = cell->eta();
922
923 float diffeta = etac-eta2;
924 float diffphi = phic-phi2;
925 if (diffphi < -pi) diffphi += twopi;
926 if (diffphi > pi) diffphi -= twopi;
927
928 if(fabs(diffeta)<deta && fabs(diffphi)<dphi){
929 eh_scint += cell->e();
930 }
931 }
932 }
933 //Set the TileGap3 sampling energy to the cluster; Needed for MVA calibration
934 helper.cluster()->setEnergy(CaloSampling::TileGap3,eh_scint);
935
936 helper.cluster()->setEta(CaloSampling::TileGap3, eta2);
937 helper.cluster()->setPhi(CaloSampling::TileGap3, phi2);
938 }
939}
#define REPORT_ERROR(SC)
Report an error.
#define pi
constexpr double twopi
CaloSampling::CaloSample CaloSample
Definition CaloCell_ID.h:53
SG::ReadHandleKey< CaloCellContainer > m_cellsName
The StoreGate key for the container of our input cells.
DataModel_detail::const_iterator< DataVector > const_iterator
Definition DataVector.h:838
void etaphi_range(const CaloDetDescrManager &dd_man, double eta, double phi, CaloCell_ID::CaloSample sampling, double &deta, double &dphi)
Return eta/phi ranges encompassing +- 1 cell.
setEt setPhi setE277 setWeta2 eta1

◆ makeCorrection2()

void CaloFillRectangularCluster::makeCorrection2 ( const EventContext & ctx,
const CaloDetDescrManager & dd_man,
CaloClusterCorr::SamplingHelper & helper ) const
privateinherited

Definition at line 948 of file CaloFillRectangularCluster.cxx.

952{
953
954 // Don't do anything if we don't have any cells.
955 if (helper.empty())
956 return;
957
958 // Get the seed position of the cluster.
959 CaloCluster* cluster = helper.cluster();
960 double eta, phi;
961 get_seed (helper, cluster, eta, phi);
962 double aeta = fabs(eta);
963
964 // set the appropriate cluster size
965 int neta = cluster->getClusterEtaSize();
966 int nphi = cluster->getClusterPhiSize();
967
968 if (m_neta != neta || m_nphi != nphi) {
969 CaloCluster::ClusterSize oldSize = cluster->clusterSize();
970 CaloCluster::ClusterSize newSize = oldSize;
971 switch(oldSize) {
973 break;
977 if (m_neta==5 && m_nphi==5) newSize=CaloCluster::SW_55ele;
978 if (m_neta==3 && m_nphi==5) newSize=CaloCluster::SW_35ele;
979 if (m_neta==3 && m_nphi==7) newSize=CaloCluster::SW_37ele;
980 if (m_neta==7 && m_nphi==11) newSize=CaloCluster::SW_7_11;
981 break;
985 if (m_neta==5 && m_nphi==5) newSize=CaloCluster::SW_55gam;
986 if (m_neta==3 && m_nphi==5) newSize=CaloCluster::SW_35gam;
987 if (m_neta==3 && m_nphi==7) newSize=CaloCluster::SW_37gam;
988 if (m_neta==7 && m_nphi==11) newSize=CaloCluster::SW_7_11;
989 break;
993 if (m_neta==5 && m_nphi==5) newSize=CaloCluster::SW_55Econv;
994 if (m_neta==3 && m_nphi==5) newSize=CaloCluster::SW_35Econv;
995 if (m_neta==3 && m_nphi==7) newSize=CaloCluster::SW_37Econv;
996 if (m_neta==7 && m_nphi==11) newSize=CaloCluster::SW_7_11;
997 break;
998 default:
999 if (m_neta==5 && m_nphi==5) newSize=CaloCluster::SW_55ele;
1000 if (m_neta==3 && m_nphi==5) newSize=CaloCluster::SW_35ele;
1001 if (m_neta==3 && m_nphi==7) newSize=CaloCluster::SW_37ele;
1002 if (m_neta==7 && m_nphi==11) newSize=CaloCluster::SW_7_11;
1003 break;
1004 }
1005 cluster->setClusterSize(newSize);
1006 }
1007
1008 // Lists of samplings in the barrel and endcap.
1009 static const CaloSampling::CaloSample samplings_b[4] =
1010 { CaloSampling::PreSamplerB, CaloSampling::EMB1,
1011 CaloSampling::EMB2, CaloSampling::EMB3 };
1012 static const CaloSampling::CaloSample samplings_e[4] =
1013 { CaloSampling::PreSamplerE, CaloSampling::EME1,
1014 CaloSampling::EME2, CaloSampling::EME3 };
1015
1016 // We need to calculate sampling properties for barrel and endcap
1017 // separately.
1018 // FIXME: the overlap with barrel should be checked!!
1019
1020 //Now set the sampling pattern for this cluster
1021 //Can't set sampling variables w/o setting the sampling pattern before
1022 uint32_t samplingPattern_b=0xf; //first four bits: The barrel sampling (PS to Back)
1023 uint32_t samplingPattern_e=0xf0; //bits 4-7: The EMEC samplings (PS to back)
1024 uint32_t samplingPattern=0;
1025
1026 if (aeta < 1.6)
1027 samplingPattern |=samplingPattern_b;
1028
1029 if (aeta > 1.3)
1030 samplingPattern |=samplingPattern_e;
1031
1032 if (aeta > 1.37 && aeta < 1.63)
1033 samplingPattern |=(1<<(uint32_t)CaloSampling::TileGap3);
1034
1035 cluster->setSamplingPattern(samplingPattern);
1036
1037 // Barrel
1038 if (aeta < 1.6) {
1039 makeCorrection1 (ctx, dd_man,helper, eta, phi, samplings_b);
1040 }
1041
1042 // Endcap
1043 if (aeta > 1.3) {
1044 makeCorrection1 (ctx, dd_man,helper, eta, phi, samplings_e);
1045 }
1046
1047 // Set the total cluster energy to the sum over all samplings.
1048 double cl_ene = 0;
1049 for(int i=0; i<4; i++ ){
1050 cl_ene += cluster->eSample(samplings_b[i]);
1051 cl_ene += cluster->eSample(samplings_e[i]);
1052 }
1053 cluster->setE(cl_ene);
1054
1055 if (m_setRawState) {
1056 cluster->setRawE(cl_ene);
1057 cluster->setRawEta(eta);
1058 cluster->setRawPhi(phi);
1059 }
1060
1061}
void setRawEta(double eta)
Set raw eta.
double eSample(sampling_type sampling) const
Retrieve energy in a given sampling.
unsigned int getClusterEtaSize() const
void setRawPhi(double phi)
Set raw phi.
void setRawE(double e)
Set raw energy.
void setClusterSize(unsigned int theClusterSize)
Set cluster size.
unsigned int getClusterPhiSize() const
virtual void setE(double e)
Set energy.
Gaudi::Property< int > m_neta
cluster size. These are properties.
Gaudi::Property< bool > m_setRawState
Property to tell if the raw energy, eta0 and phi0 should be saved as uncalibrated signal state.
virtual void get_seed(CaloClusterCorr::SamplingHelper &helper, const xAOD::CaloCluster *cluster, double &eta, double &phi) const
void makeCorrection1(const EventContext &ctx, const CaloDetDescrManager &dd_man, CaloClusterCorr::SamplingHelper &helper, double eta, double phi, const CaloSampling::CaloSample samplings[4]) const
ClusterSize
Enumeration to identify different cluster sizes.
setEventNumber uint32_t

◆ setCaloCellContainerName()

StatusCode CaloFillRectangularCluster::setCaloCellContainerName ( const std::string & name)
overridevirtualinherited

Change the name of the CaloCellContainer used by this tool.

Parameters
nameThe new container name.

Implements ISetCaloCellContainerName.

Definition at line 1212 of file CaloFillRectangularCluster.cxx.

1214{
1215 return this->setProperty (StringProperty ("cells_name", name));
1216}
void setProperty(columnar::PythonToolHandle &self, const std::string &key, nb::object value)

◆ setenergy()

void CaloClusterCorrection::setenergy ( xAOD::CaloCluster * cluster,
float energy ) const
virtualinherited

Definition at line 93 of file CaloClusterCorrection.cxx.

94{
95 if (cluster->e() == 0) {
96 if (energy != 0)
97 REPORT_MESSAGE (MSG::WARNING)
98 << "Attempt to rescale zero-energy cluster to energy " << energy
99 << " ignored.";
100 return;
101 }
102
103 float correction = energy/cluster->e();
104 cluster->setE(energy);
105
106 // also correct individual sampling energies:
107
108 for (int iSample=CaloSampling::PreSamplerB;
109 iSample < CaloSampling::Unknown;
110 ++iSample)
111 {
112 CaloSampling::CaloSample sampling=static_cast<CaloSampling::CaloSample>(iSample);
113 if (cluster->hasSampling (sampling)) {
114 double e = cluster->eSample(sampling);
115 cluster->setEnergy(sampling,e*correction) ;
116 }
117 }
118}
#define REPORT_MESSAGE(LVL)
Report a message.
float eSample(const CaloSample sampling) const
bool setEnergy(const CaloSample sampling, const float e)
Set energy for a given sampling. Returns false if the sample isn't part of the cluster.
bool hasSampling(const CaloSample s) const
Checks if certain smapling contributes to cluster.
correction(mu, runmode, campaign, run=None)
Definition zlumi_mc_cf.py:4

◆ setsample()

void CaloClusterCorrection::setsample ( xAOD::CaloCluster * cluster,
CaloSampling::CaloSample sampling,
float em,
float etam,
float phim,
float emax,
float etamax,
float phimax,
float etas,
float phis ) const
virtualinherited

Definition at line 73 of file CaloClusterCorrection.cxx.

78{
79 cluster->setEnergy(sampling, em);
80 cluster->setEta(sampling, etam);
81 cluster->setPhi(sampling, phim);
82
83 cluster->setEmax(sampling,emax);
84 cluster->setEtamax(sampling,etamax);
85 cluster->setPhimax(sampling,phimax);
86
87 cluster->setEtasize(sampling, etas);
88 cluster->setPhisize(sampling, phis);
89}
bool setPhi(const CaloSample sampling, const float phi)
Set in a given sampling. Returns false if the sample isn't part of the cluster.
bool setEtasize(const CaloSample sampling, const float etaSize)
Set the cluster size in for a given sampling.
bool setPhisize(const CaloSample sampling, const float phiSize)
Set the cluster size in for a given sampling.
bool setPhimax(const CaloSample sampling, const float phiMax)
Set the phi of the cell with the highest energy in a particular sampling.
bool setEta(const CaloSample sampling, const float eta)
Set in a given sampling. Returns false if the sample isn't part of the cluster.
bool setEmax(const CaloSample sampling, const float eMax)
Set the Energy of the cell with the highest energy in a particular sampling.
bool setEtamax(const CaloSample sampling, const float etaMax)
Set the eta of the cell with the highest energy in a particular sampling.

Member Data Documentation

◆ CaloTopoEMlayers_versions

list CaloTopoEMlayers.CaloTopoEMlayers_versions
Initial value:
= [
['', cls, ['CaloTopoEMlayers.CaloTopoEMlayers_parms', CALOCORR_NOPOOL]],
]

Definition at line 24 of file CaloTopoEMlayers.py.

◆ cls

CaloTopoEMlayers.cls = CompFactory.CaloTopoEMlayers

Definition at line 23 of file CaloTopoEMlayers.py.

◆ m_caloMgrKey

SG::ReadCondHandleKey<CaloDetDescrManager> CaloClusterCorrection::m_caloMgrKey {this,"CaloDetDescrManager", "CaloDetDescrManager"}
protectedinherited

Definition at line 83 of file CaloClusterCorrection.h.

83{this,"CaloDetDescrManager", "CaloDetDescrManager"};

◆ m_cellsName

SG::ReadHandleKey<CaloCellContainer> CaloFillRectangularCluster::m_cellsName {this, "cells_name", "AllCalo"}
privateinherited

The StoreGate key for the container of our input cells.

This is a property.

Definition at line 194 of file CaloFillRectangularCluster.h.

194{this, "cells_name", "AllCalo"};

◆ m_deta0

double CaloFillRectangularCluster::m_deta0 = 0.0
protectedinherited

Cell window sizes in each sampling.

Definition at line 174 of file CaloFillRectangularCluster.h.

◆ m_deta1

double CaloFillRectangularCluster::m_deta1 = 0.0
protectedinherited

Definition at line 174 of file CaloFillRectangularCluster.h.

◆ m_deta2

double CaloFillRectangularCluster::m_deta2 = 0.0
protectedinherited

Definition at line 174 of file CaloFillRectangularCluster.h.

◆ m_deta3

double CaloFillRectangularCluster::m_deta3 = 0.0
protectedinherited

Definition at line 174 of file CaloFillRectangularCluster.h.

◆ m_dphi0

double CaloFillRectangularCluster::m_dphi0 = 0.0
protectedinherited

Definition at line 175 of file CaloFillRectangularCluster.h.

◆ m_dphi1

double CaloFillRectangularCluster::m_dphi1 = 0.0
protectedinherited

Definition at line 175 of file CaloFillRectangularCluster.h.

◆ m_dphi2

double CaloFillRectangularCluster::m_dphi2 = 0.0
protectedinherited

Definition at line 175 of file CaloFillRectangularCluster.h.

◆ m_dphi3

double CaloFillRectangularCluster::m_dphi3 = 0.0
protectedinherited

Definition at line 175 of file CaloFillRectangularCluster.h.

◆ m_fill_cluster

Gaudi::Property<bool> CaloFillRectangularCluster::m_fill_cluster {this, "fill_cluster", true}
protectedinherited

Fill-cluster flag.

This is a property. If true, then we fill the cluster with cells from StoreGate. Otherwise, we use the cells already in the cluster.

Definition at line 184 of file CaloFillRectangularCluster.h.

184{this, "fill_cluster", true};

◆ m_neta

Gaudi::Property<int> CaloFillRectangularCluster::m_neta {this, "eta_size", 5}
protectedinherited

\(\eta\times\phi\) cluster size. These are properties.

Definition at line 178 of file CaloFillRectangularCluster.h.

178{this, "eta_size", 5};

◆ m_nphi

Gaudi::Property<int> CaloFillRectangularCluster::m_nphi {this, "phi_size", 5}
protectedinherited

Definition at line 179 of file CaloFillRectangularCluster.h.

179{this, "phi_size", 5};

◆ m_setRawState

Gaudi::Property<bool> CaloFillRectangularCluster::m_setRawState {this, "set_raw_state", true}
protectedinherited

Property to tell if the raw energy, eta0 and phi0 should be saved as uncalibrated signal state.

Definition at line 189 of file CaloFillRectangularCluster.h.

189{this, "set_raw_state", true};

The documentation for this class was generated from the following files: