ATLAS Offline Software
L2IsoMuon_v1.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 // System include(s):
7 #include <iostream>
8 
9 // EDM include(s):
11 
12 // Local include(s):
14 
15 namespace xAOD {
16 
18  : IParticle() {
19 
20  }
21 
23  //
24  // Implementation of the xAOD::IParticle functions
25  //
26 
28  pt )
30  eta )
32  phi )
33 
34  double L2IsoMuon_v1::m() const {
35 
36  return 105.6583715;
37  }
38 
39  double L2IsoMuon_v1::e() const {
40 
41  return genvecP4().E();
42  }
43 
44  double L2IsoMuon_v1::rapidity() const {
45 
46  return genvecP4().Rapidity();
47  }
48 
50  FourMom_t p4;
51  p4.SetPtEtaPhiM( pt(), eta(), phi(),m());
52  return p4;
53  }
54 
57  return GenVecFourMom_t(pt(), eta(), phi(), m());
58  }
59 
61 
62  return Type::L2IsoMuon;
63  }
64 
65  //
67 
69  //
70  // Implementation of the 4-momentum setter functions
71  //
72 
73  void L2IsoMuon_v1::setPt( float pt ) {
74 
75  static const Accessor< float > acc( "pt" );
76  acc( *this ) = pt;
77  return;
78  }
79 
80  void L2IsoMuon_v1::setEta( float eta ) {
81 
82  static const Accessor< float > acc( "eta" );
83  acc( *this ) = eta;
84  return;
85  }
86 
87  void L2IsoMuon_v1::setPhi( float phi ) {
88 
89  static const Accessor< float > acc( "phi" );
90  acc( *this ) = phi;
91  return;
92  }
93 
94  //
96 
98  //
99  // Implementation of the LVL2 muon iso specific functions
100  //
101 
103  roiWord, setRoiWord )
105  charge, setCharge )
107  errorFlag, setErrorFlag )
109  sumPt01, setSumPt01 )
111  sumPt02, setSumPt02 )
113  sumPt03, setSumPt03 )
115  sumPt04, setSumPt04 )
117  sumEt01, setSumEt01 )
119  sumEt02, setSumEt02 )
121  sumEt03, setSumEt03 )
123  sumEt04, setSumEt04 )
124  //
126 
127 } // namespace xAOD
128 
132 std::ostream& operator<< ( std::ostream& out,
133  const xAOD::L2IsoMuon_v1& mu ) {
134 
135  out << "roiWord: " << mu.roiWord() << "; ";
136  out << "charge: " << mu.charge() << "; ";
137  out << "pt: " << mu.pt() << "; ";
138  out << "phi: " << mu.phi() << "; ";
139  out << "eta: " << mu.eta() << "; ";
140  out << "errorFlag: " << mu.errorFlag() << "; ";
141  out << "sumPt01: " << mu.sumPt01() << "; ";
142  out << "sumPt02: " << mu.sumPt02() << "; ";
143  out << "sumPt03: " << mu.sumPt03() << "; ";
144  out << "sumPt04: " << mu.sumPt04() << "; ";
145  out << "sumEt01: " << mu.sumEt01() << "; ";
146  out << "sumEt02: " << mu.sumEt02() << "; ";
147  out << "sumEt03: " << mu.sumEt03() << "; ";
148  out << "sumEt04: " << mu.sumEt04();
149 
150  // Return the stream:
151  return out;
152 }
xAOD::AUXSTORE_PRIMITIVE_SETTER_AND_GETTER
AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(BTagging_v1, float, IP2D_pb, setIP2D_pb) AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(BTagging_v1
xAOD::L2IsoMuon_v1::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
xAOD::sumPt03
setCharge setSumPt01 sumPt03
Definition: L2IsoMuon_v1.cxx:113
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
xAOD::sumEt01
setCharge setSumPt01 setSumPt03 sumEt01
Definition: L2IsoMuon_v1.cxx:117
xAOD::L2IsoMuon_v1::type
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
xAOD::L2IsoMuon_v1::phi
virtual double phi() const
The azimuthal angle ( ) of the particle.
SG::Accessor< float >
AuxStoreAccessorMacros.h
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
xAOD::L2IsoMuon_v1::setEta
void setEta(float eta)
Set the pseudorapidity ( ) of the muon.
Definition: L2IsoMuon_v1.cxx:80
xAOD::L2IsoMuon_v1::GenVecFourMom_t
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type for trig muons.
Definition: L2IsoMuon_v1.h:62
xAOD::L2IsoMuon_v1::L2IsoMuon_v1
L2IsoMuon_v1()
Constructor.
Definition: L2IsoMuon_v1.cxx:17
xAOD::sumPt01
setCharge sumPt01
Definition: L2IsoMuon_v1.cxx:109
xAOD::L2IsoMuon_v1::rapidity
virtual double rapidity() const
The true rapidity (y) of the particle.
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::L2IsoMuon_v1::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
xAOD::pt
setRcore setEtHad setFside pt
Definition: TrigPhoton_v1.cxx:106
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
xAOD::L2IsoMuon_v1::p4
virtual FourMom_t p4() const
The full 4-momentum of the particle.
xAOD::phi
setEt phi
Definition: TrigEMCluster_v1.cxx:29
xAOD::roiWord
roiWord
Definition: TrigMissingET_v1.cxx:36
xAOD::AUXSTORE_PRIMITIVE_GETTER_WITH_CAST
AUXSTORE_PRIMITIVE_GETTER_WITH_CAST(Muon_v1, uint8_t, Muon_v1::EnergyLossType, energyLossType) AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(Muon_v1
xAOD::charge
charge
Definition: TrigElectron_v1.cxx:85
AthenaPoolTestRead.acc
acc
Definition: AthenaPoolTestRead.py:16
xAOD::L2IsoMuon
L2IsoMuon_v1 L2IsoMuon
Define the latest version of the muon Iso class.
Definition: L2IsoMuon.h:15
xAOD::L2IsoMuon_v1::setPhi
void setPhi(float phi)
Set the azimuthal angle ( ) of the muon.
Definition: L2IsoMuon_v1.cxx:87
xAOD::L2IsoMuon_v1::FourMom_t
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition: L2IsoMuon_v1.h:56
xAOD::L2IsoMuon_v1
Class describing isolation info for muons reconstructed in the LVL2 trigger.
Definition: L2IsoMuon_v1.h:33
test_pythinning.out
out
Definition: test_pythinning.py:94
xAOD::L2IsoMuon_v1::setPt
void setPt(float pt)
Set the transverse momentum ( ) of the muon.
xAOD::L2IsoMuon_v1::genvecP4
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : internal trig muon type.
xAOD::L2IsoMuon_v1::m
virtual double m() const
The invariant mass of the particle.
L2IsoMuon_v1.h
xAOD::sumEt03
setCharge setSumPt01 setSumPt03 setSumEt01 sumEt03
Definition: L2IsoMuon_v1.cxx:121
xAOD::L2IsoMuon_v1::e
virtual double e() const
The total energy of the particle.
xAODType::ObjectType
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition: ObjectType.h:32
CaloNoise_fillDB.mu
mu
Definition: CaloNoise_fillDB.py:53