139 if( !
acc.isAvailable( *
this ) ) {
167 float dphi,
float deta,
168 const EMClusterLink_t& clLink ) {
191 if( clLink.isValid() ) {
202 const float ehad = clPtr->
ehad1();
203 const float cl_EThad = ehad / std::cosh( std::abs(
caloEta() ) );
213 const float e237 = clPtr->
e237();
221 const float emaxs1 = clPtr->
emaxs1();
224 const float cl_Eratio = ( ( emaxs1 -
e2tsts1 ) /
232 const float tmp_cl_energy = clPtr->
energy();
234 if( std::abs( tmp_cl_energy ) > 0.00001 ) {
236 const float cl_e_frac_S0 =
237 ( clPtr->
energy( CaloSampling::PreSamplerB ) +
238 clPtr->
energy( CaloSampling::PreSamplerE ) ) / tmp_cl_energy;
239 setF0( cl_e_frac_S0 );
241 const float cl_e_frac_S1 =
242 ( clPtr->
energy( CaloSampling::EMB1 ) +
243 clPtr->
energy( CaloSampling::EME1 ) ) / tmp_cl_energy;
244 setF1( cl_e_frac_S1 );
246 const float cl_e_frac_S2 =
247 ( clPtr->
energy( CaloSampling::EMB2 ) +
248 clPtr->
energy( CaloSampling::EME2 ) ) / tmp_cl_energy;
249 setF2( cl_e_frac_S2 );
251 const float cl_e_frac_S3 =
252 ( clPtr->
energy( CaloSampling::EMB3 ) +
253 clPtr->
energy( CaloSampling::EME3 ) ) / tmp_cl_energy;
254 setF3( cl_e_frac_S3 );
#define AUXSTORE_PRIMITIVE_GETTER_WITH_CAST(CL, PERSTYPE, TRANSTYPE, NAME)
Macro creating a getter function with a type conversion.
#define AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of primitive auxiliary properties.
#define AUXSTORE_OBJECT_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of complex auxiliary properties.
bool isValid() const
Test to see if the link can be dereferenced.
TLorentzVector FourMom_t
Definition of the 4-momentum type.
SG::Accessor< T, ALLOC > Accessor
float e2tsts1() const
get second maximum energy in sampling 1 (strip layer)
float et() const
get Et (calibrated)
float eta() const
get Eta (calibrated)
float emaxs1() const
get maximum energy in sampling 1 (strip layer)
float phi() const
get Phi (calibrated)
float e237() const
get Energy in a 3x7 cluster (no calibration) around hottest cell
float e277() const
get Energy in a 7x7 cluster (no calibration) around hottest cell
float ehad1() const
get hadronic Energy (first hadronic layer)
float weta2() const
get cluster width (based on a 3x5 cluster - 2nd layer)
float energy() const
get Energy (calibrated)
float fracs1() const
get Energy in a 7 strips (around hottest strip) minus energy in 3 strips divided by energy in 3 strip...
Class describing a photon reconstructed in the HLT.
const TrigEMCluster * emCluster() const
The associated EM cluster, as a simple pointer.
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type for egamma.
void setFside(float fside)
Documentation to be added.
void setF1(float f1)
Documentation to be added.
void setF3(float f3)
Documentation to be added.
void setRoiWord(uint32_t roi)
Set the RoI word that seeded the reconstruction of this object.
void setF0(float f0)
Documentation to be added.
ElementLink< TrigEMClusterContainer > EMClusterLink_t
Type of the EM cluster link.
void setPt(double pt)
Set the transverse momentum ( ) of the photon.
TrigPhoton_v1()
Default constructor.
virtual double m() const
The invariant mass of the particle.
void setEtHad1(float HadEt)
Documentation to be added.
void setDPhi(float dPhi)
Documentation to be added.
virtual double eta() const
The pseudorapidity ( ) of the particle.
void setRcore(float Reta)
Documentation to be added.
void init(uint32_t roi, float dphi, float deta, const EMClusterLink_t &clLink)
Initialisation function, setting most properties of the object.
void setEtHad(float HadEt)
Documentation to be added.
virtual double rapidity() const
The true rapidity (y) of the particle.
void setWeta2(float Weta2)
Documentation to be added.
virtual double e() const
The total energy of the particle.
float caloEta() const
Pseudorapidity ( ) of the photon in the calorimeter.
virtual double pt() const
The transverse momentum ( ) of the particle.
void setDEta(float dEta)
Documentation to be added.
void setCaloPhi(float caloPhi)
Set the azimuthal angle ( ) of the photon in the calorimeter.
void setEmClusterLink(const EMClusterLink_t &value)
Set the ElementLink pointing to the EM cluster constituent.
virtual double phi() const
The azimuthal angle ( ) of the particle.
void setEratio(float Eratio)
Documentation to be added.
virtual FourMom_t p4() const
The full 4-momentum of the particle.
void setCaloEta(float caloEta)
Set the pseudorapidity ( ) of the photon in the calorimeter.
void setF2(float f2)
Documentation to be added.
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : internal egamma type.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
setRcore setEtHad setFside pt
AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(CompositeParticle_v1, float, double, px, setPx) AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(CompositeParticle_v1
setEt setPhi setE277 weta2
setEt setPhi setE277 setWeta2 setEta1 e2tsts1
setRcore setEtHad setFside setPt caloPhi
AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(BTagging_v1, float, IP2D_pb, setIP2D_pb) AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(BTagging_v1
TrigEMCluster_v1 TrigEMCluster
Define the latest version of the trigger EM cluster class.
setCharge setNTRTHiThresholdHits setEratio etHad1
static const SG::AuxElement::Accessor< ElementLink< IParticleContainer > > acc("originalObjectLink")
Object used for setting/getting the dynamic decoration in question.
setCharge setNTRTHiThresholdHits eratio