ATLAS Offline Software
TauJet_v2.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id: TauJet_v2.h 747258 2016-05-15 02:57:19Z griffith $
8 #ifndef XAODTAU_VERSIONS_TAUJET_V2_H
9 #define XAODTAU_VERSIONS_TAUJET_V2_H
10 
11 
12 // Core include(s):
13 #include "AthLinks/ElementLink.h"
14 
15 
16 // xAOD include(s):
17 #include "xAODBase/IParticle.h"
19 #include "xAODTau/TauDefs.h"
22 #include "xAODJet/JetContainer.h"
23 #include "xAODPFlow/PFOContainer.h"
24 
25 // ROOT include(s):
26 #include "Math/Vector4D.h"
27 
28 namespace xAOD {
29 
30 
31 
38  class TauJet_v2 : public IParticle {
39 
40  public:
42  TauJet_v2();
43 
46 
48  virtual double pt() const;
50  virtual double eta() const;
52  virtual double phi() const;
54  virtual double e() const;
55 
57  virtual double m() const;
59  virtual double rapidity() const;
60 
62  virtual FourMom_t p4() const;
63  virtual FourMom_t p4(const TauJetParameters::TauCalibType calib) const;
64 
66  typedef ROOT::Math::LorentzVector<ROOT::Math::PtEtaPhiM4D<double> > GenVecFourMom_t;
67 
69  GenVecFourMom_t genvecP4() const;
71 
73  void setP4(double pt, double eta, double phi, double m);
74  bool setP4(const TauJetParameters::TauCalibType calib, double pt, double eta, double phi, double m);
75 
76  //setters and getters for the individual 4-vector components at different calibration levels
77  double ptJetSeed() const;
78  double etaJetSeed() const;
79  double phiJetSeed() const;
80  double mJetSeed() const;
81 
82  double ptDetectorAxis() const;
83  double etaDetectorAxis() const;
84  double phiDetectorAxis() const;
85  double mDetectorAxis() const;
86 
87  double ptIntermediateAxis() const;
88  double etaIntermediateAxis() const;
89  double phiIntermediateAxis() const;
90  double mIntermediateAxis() const;
91 
92  double ptTauEnergyScale() const;
93  double etaTauEnergyScale() const;
94  double phiTauEnergyScale() const;
95  double mTauEnergyScale() const;
96 
97  double ptTauEtaCalib() const;
98  double etaTauEtaCalib() const;
99  double phiTauEtaCalib() const;
100  double mTauEtaCalib() const;
101 
102  // double ptPanTauEFlowRecProto() const;
103  // double etaPanTauEFlowRecProto() const;
104  // double phiPanTauEFlowRecProto() const;
105  // double mPanTauEFlowRecProto() const;
106 
107  // double ptPanTauEFlowRec() const;
108  // double etaPanTauEFlowRec() const;
109  // double phiPanTauEFlowRec() const;
110  // double mPanTauEFlowRec() const;
111 
112  double ptPanTauCellBasedProto() const;
113  double etaPanTauCellBasedProto() const;
114  double phiPanTauCellBasedProto() const;
115  double mPanTauCellBasedProto() const;
116 
117  double ptPanTauCellBased() const;
118  double etaPanTauCellBased() const;
119  double phiPanTauCellBased() const;
120  double mPanTauCellBased() const;
121 
122  double ptTrigCaloOnly() const;
123  double etaTrigCaloOnly() const;
124  double phiTrigCaloOnly() const;
125  double mTrigCaloOnly() const;
126 
128  virtual Type::ObjectType type() const;
129 
131 
132  // the summed up charge of all tau tracks
133  float charge() const;
134 
135  // set the charge
136  void setCharge(float);
137 
139  unsigned int ROIWord() const;
140 
141  // set the ROIWord, needed by TauTrigger
142  void setROIWord(unsigned int);
143 
146  bool hasDiscriminant( TauJetParameters::TauID discID ) const;
147 
150  double discriminant( TauJetParameters::TauID discID ) const;
151 
155  void setDiscriminant( TauJetParameters::TauID discID, double disc );
156 
159  bool isTau( TauJetParameters::IsTauFlag flag ) const;
160 
165 
170 
173  bool flag( TauJetParameters::VetoFlags flag ) const;
174 
175 
177  bool detail( TauJetParameters::Detail detail, int& value ) const;
178  bool detail( TauJetParameters::Detail detail, float& value ) const;
181 
182  // getter for specialized types. Compilation error if used with other types.
183  template <class T>
185  {
186  T temp;
187  if (this->detail(detail,temp)) return temp;
188  else return 0;
189  }
190 
196 
197  // getter for specialized types. Compilation error if used with other types.
198  template <class T>
200  {
201  T temp;
202  if (this->panTauDetail(panTauDetail,temp)) return temp;
203  else return 0;
204  }
205 
206  //seed jet
208 
209  const JetLink_t& jetLink() const;
210 
211  void setJetLink( const JetLink_t& jetLink );
212 
213  void setJet( const xAOD::JetContainer *cont, const xAOD::Jet *jet );
214 
215  const Jet* jet() const;
216 
217 
218  //vertex that the tau comes from
220 
221  const VertexLink_t& vertexLink() const;
222 
224 
225  void setVertex( const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex );
226 
227  const Vertex* vertex() const;
228 
229 
230  //secondary vertex that the tau decays in
231 
233 
235 
236  void setSecondaryVertex( const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex );
237 
238  const Vertex* secondaryVertex() const;
239 
240 
241  //tracks
242  typedef std::vector< ElementLink< xAOD::TrackParticleContainer > > TrackParticleLinks_t;
243 
245 
246  void setTrackLinks( const TrackParticleLinks_t& trackParticles );
248  const TrackParticle* track( size_t i ) const;
249  // /// Get the number of track particles associated with this tau
250  size_t nTracks() const;
254  void clearTrackLinks();
255 
256  // Get and set track flags
259 
260  //name accessors for trackFilterProngs
261  int trackFilterProngs() const;
262  //name accessors for trackFilterProngs
264 
265  //name accessors for trackFilterQuality
266  int trackFilterQuality() const;
267  //name accessors for trackFilterQuality
269 
270  //name accessors for pi0ConeDR
271  float pi0ConeDR() const;
272  //name accessors for pi0ConeDR
273  void setPi0ConeDR(float);
274 
275 
276  //name accessors for trackEtaStrip
277  float trackEtaStrip(unsigned int numTrack) const;
278  //name accessors for trackEtaStrip
279  void setTrackEtaStrip(unsigned int numTrack, float eta);
280 
281 
282  //name accessors for trackPhiStrip
283  float trackPhiStrip(unsigned int numTrack) const;
284  //name accessors for trackPhiStrip
285  void setTrackPhiStrip(unsigned int numTrack, float phi);
286 
287 
288  //wide tracks
290 
291  void setWideTrackLinks( const TrackParticleLinks_t& trackParticles );
293  const TrackParticle* wideTrack( size_t i ) const;
295  size_t nWideTracks() const;
299  void clearWideTrackLinks();
300 
301 
302  //other tracks
304 
305  void setOtherTrackLinks( const TrackParticleLinks_t& trackParticles );
307  const TrackParticle* otherTrack( size_t i ) const;
309  size_t nOtherTracks() const;
313  void clearOtherTrackLinks();
314 
315 
316 
317  typedef std::vector< ElementLink< xAOD::PFOContainer > > PFOLinks_t;
318 
319 
320  //photon shot PFOs
321  const PFOLinks_t& hadronicPFOLinks() const;
322 
323  void setHadronicPFOLinks( const PFOLinks_t& hadronicPFOs );
325  const PFO* hadronicPFO( size_t i ) const;
327  size_t nHadronicPFOs() const;
331  void clearHadronicPFOLinks();
332 
333 
334  //photon shot PFOs
335  const PFOLinks_t& shotPFOLinks() const;
336 
337  void setShotPFOLinks( const PFOLinks_t& shotPFOs );
339  const PFO* shotPFO( size_t i ) const;
341  size_t nShotPFOs() const;
345  void clearShotPFOLinks();
346 
347 
349  //
350  //charged PFOs
351  const PFOLinks_t& chargedPFOLinks() const;
352 
353  void setChargedPFOLinks( const PFOLinks_t& chargedPFOs );
355  const PFO* chargedPFO( size_t i ) const;
357  size_t nChargedPFOs() const;
361  void clearChargedPFOLinks();
362 
363 
364  //neutral PFOs
365  const PFOLinks_t& neutralPFOLinks() const;
366 
367  void setNeutralPFOLinks( const PFOLinks_t& neutralPFOs );
369  const PFO* neutralPFO( size_t i ) const;
371  size_t nNeutralPFOs() const;
375  void clearNeutralPFOLinks();
376 
377 
378  //pi0 PFOs
379  const PFOLinks_t& pi0PFOLinks() const;
380 
381  void setPi0PFOLinks( const PFOLinks_t& pi0PFOs );
383  const PFO* pi0PFO( size_t i ) const;
385  size_t nPi0PFOs() const;
387  void addPi0PFOLink( const ElementLink< PFOContainer >& pfo);
389  void clearPi0PFOLinks();
390 
391 
392 
393 
395  //
396  //cellbased_charged PFOs
398 
399  void setProtoChargedPFOLinks( const PFOLinks_t& protoChargedPFOs );
401  const PFO* protoChargedPFO( size_t i ) const;
403  size_t nProtoChargedPFOs() const;
408 
409 
410  //cellbased_neutral PFOs
412 
413  void setProtoNeutralPFOLinks( const PFOLinks_t& protoNeutralPFOs );
415  const PFO* protoNeutralPFO( size_t i ) const;
417  size_t nProtoNeutralPFOs() const;
422 
423 
424  //pi0 PFOs
425  const PFOLinks_t& protoPi0PFOLinks() const;
426 
427  void setProtoPi0PFOLinks( const PFOLinks_t& protoPi0PFOs );
429  const PFO* protoPi0PFO( size_t i ) const;
431  size_t nProtoPi0PFOs() const;
435  void clearProtoPi0PFOLinks();
436 
437 
438 
440 
441 
442  void dump() const;
443 
444 
445  }; // class TauJet
446 
447 } // namespace xAOD
448 
449 
450 // Declare IParticle as a base class of TauJet_v2:
453 
454 #endif // XAODTAU_VERSIONS_TAUJET_V2_H
455 
456 // LocalWords: newROIWord
xAOD::TauJet_v2::setTrackEtaStrip
void setTrackEtaStrip(unsigned int numTrack, float eta)
Definition: TauJet_v2.cxx:484
xAOD::TauJetParameters::TauTrackFlag
TauTrackFlag
Enum for tau track flags.
Definition: TauDefs.h:400
xAOD::TauJet_v2::clearProtoChargedPFOLinks
void clearProtoChargedPFOLinks()
Remove all cellbased_charged PFOs from the tau.
Definition: TauJet_v2.cxx:813
xAOD::TauJet_v2::protoNeutralPFO
const PFO * protoNeutralPFO(size_t i) const
Get the pointer to a given cellbased_neutral PFO associated with this tau.
xAOD::TauJet_v2::addNeutralPFOLink
void addNeutralPFOLink(const ElementLink< PFOContainer > &pfo)
add a neutral PFO to the tau
Definition: TauJet_v2.cxx:742
xAOD::TauJet_v2::mJetSeed
double mJetSeed() const
xAOD::TauJet_v2::setTrackFilterQuality
void setTrackFilterQuality(int)
xAOD::TauJet_v2::hadronicPFOLinks
const PFOLinks_t & hadronicPFOLinks() const
xAOD::TauJet_v2::ptTauEnergyScale
double ptTauEnergyScale() const
xAOD::TauJet_v2::type
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
Definition: TauJet_v2.cxx:215
xAOD::TauJet_v2::otherTrack
const TrackParticle * otherTrack(size_t i) const
Get the pointer to a given track associated with this tau.
xAOD::TauJet_v2::nOtherTracks
size_t nOtherTracks() const
Get the number of track particles associated with this tau.
Definition: TauJet_v2.cxx:554
xAOD::TauJet_v2::setJetLink
void setJetLink(const JetLink_t &jetLink)
xAOD::TauJet_v2::TauJet_v2
TauJet_v2()
Default constructor.
Definition: TauJet_v2.cxx:24
xAOD::TauJet_v2::nProtoNeutralPFOs
size_t nProtoNeutralPFOs() const
Get the number of cellbased_neutral PFO particles associated with this tau.
Definition: TauJet_v2.cxx:833
xAOD::TauJet_v2::GenVecFourMom_t
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type for taus.
Definition: TauJet_v2.h:66
xAOD::TauJet_v2::mDetectorAxis
double mDetectorAxis() const
xAOD::TauJet_v2::phiTauEtaCalib
double phiTauEtaCalib() const
xAOD::TauJet_v2::etaTauEtaCalib
double etaTauEtaCalib() const
IParticle.h
xAOD::TauJet_v2::setCharge
void setCharge(float)
xAOD::TauJet_v2::clearOtherTrackLinks
void clearOtherTrackLinks()
Remove all tracks from the tau.
Definition: TauJet_v2.cxx:564
xAOD::TauJet_v2::setIsTau
void setIsTau(TauJetParameters::IsTauFlag flag, bool value)
Set Flag for tau acceptance based on predefined arbitrary criteria.
Definition: TauJet_v2.cxx:264
xAOD::TauJet_v2::etaTrigCaloOnly
double etaTrigCaloOnly() const
xAOD::TauJetParameters::VetoFlags
VetoFlags
Enum for Veto flags.
Definition: TauDefs.h:103
xAOD::TauJet_v2::setHadronicPFOLinks
void setHadronicPFOLinks(const PFOLinks_t &hadronicPFOs)
xAOD::TauJet_v2::nProtoChargedPFOs
size_t nProtoChargedPFOs() const
Get the number of cellbased_charged PFO particles associated with this tau.
Definition: TauJet_v2.cxx:803
xAOD::TauJet_v2::wideTrack
const TrackParticle * wideTrack(size_t i) const
Get the pointer to a given track associated with this tau.
xAOD::TauJet_v2::setFlag
void setFlag(TauJetParameters::VetoFlags flag, bool value)
Set veto flag.
Definition: TauJet_v2.cxx:276
xAOD::TauJet_v2::vertex
const Vertex * vertex() const
xAOD::TauJet_v2::clearHadronicPFOLinks
void clearHadronicPFOLinks()
Remove all hadronic PFOs from the tau.
Definition: TauJet_v2.cxx:658
xAOD::TauJet_v2::addProtoChargedPFOLink
void addProtoChargedPFOLink(const ElementLink< PFOContainer > &pfo)
add a cellbased_charged PFO to the tau
Definition: TauJet_v2.cxx:807
xAOD::TauJet_v2::clearNeutralPFOLinks
void clearNeutralPFOLinks()
Remove all neutral PFOs from the tau.
Definition: TauJet_v2.cxx:748
xAOD::TauJet_v2::ptTauEtaCalib
double ptTauEtaCalib() const
xAOD::TauJet_v2::otherTrackLinks
const TrackParticleLinks_t & otherTrackLinks() const
xAOD::TauJet_v2::mTrigCaloOnly
double mTrigCaloOnly() const
xAOD::TauJet_v2::nHadronicPFOs
size_t nHadronicPFOs() const
Get the number of hadronic PFO particles associated with this tau.
Definition: TauJet_v2.cxx:648
xAOD::TauJet_v2::vertexLink
const VertexLink_t & vertexLink() const
xAOD::TauJet_v2::setProtoChargedPFOLinks
void setProtoChargedPFOLinks(const PFOLinks_t &protoChargedPFOs)
xAOD::TauJet_v2::ptPanTauCellBasedProto
double ptPanTauCellBasedProto() const
xAOD::TauJet_v2::setTrackPhiStrip
void setTrackPhiStrip(unsigned int numTrack, float phi)
Definition: TauJet_v2.cxx:504
xAOD::TauJet_v2::mTauEnergyScale
double mTauEnergyScale() const
xAOD::TauJet_v2::dump
void dump() const
Definition: TauJet_v2.cxx:882
xAOD::TauJet_v2::setDiscriminant
void setDiscriminant(TauJetParameters::TauID discID, double disc)
Set value of discriminant.
Definition: TauJet_v2.cxx:248
xAOD::TauJet_v2::setShotPFOLinks
void setShotPFOLinks(const PFOLinks_t &shotPFOs)
xAOD::TauJet_v2::addChargedPFOLink
void addChargedPFOLink(const ElementLink< PFOContainer > &pfo)
add a charged PFO to the tau
Definition: TauJet_v2.cxx:711
xAOD::TauJet_v2::addWideTrackLink
void addWideTrackLink(const ElementLink< TrackParticleContainer > &tr)
add a track to the tau
Definition: TauJet_v2.cxx:531
xAOD::TauJet_v2::isTau
bool isTau(TauJetParameters::IsTauFlag flag) const
Get Flag for tau acceptance based on predefined arbitrary criteria.
Definition: TauJet_v2.cxx:256
xAOD::TauJet_v2::phiTauEnergyScale
double phiTauEnergyScale() const
xAOD::TauJet_v2::secondaryVertexLink
const VertexLink_t & secondaryVertexLink() const
PFOContainer.h
xAOD::TauJet_v2::addShotPFOLink
void addShotPFOLink(const ElementLink< PFOContainer > &pfo)
add a shot PFO to the tau
Definition: TauJet_v2.cxx:681
athena.value
value
Definition: athena.py:124
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
detail
Definition: extract_histogram_tag.cxx:14
xAOD::TauJet_v2::setP4
void setP4(double pt, double eta, double phi, double m)
Set methods for IParticle values.
Definition: TauJet_v2.cxx:183
xAOD::TauJet_v2::setVertex
void setVertex(const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex)
Definition: TauJet_v2.cxx:603
xAOD::TauJet_v2::nChargedPFOs
size_t nChargedPFOs() const
Get the number of charged PFO particles associated with this tau.
Definition: TauJet_v2.cxx:707
xAOD::TauJetParameters::TauID
TauID
Enum for discriminants.
Definition: TauDefs.h:46
xAOD::TauJet_v2::setOtherTrackLinks
void setOtherTrackLinks(const TrackParticleLinks_t &trackParticles)
xAOD::TauJet_v2::pi0PFO
const PFO * pi0PFO(size_t i) const
Get the pointer to a given pi0 PFO associated with this tau.
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
xAOD::TauJet_v2::trackFilterProngs
int trackFilterProngs() const
xAOD::TauJet_v2::setProtoPi0PFOLinks
void setProtoPi0PFOLinks(const PFOLinks_t &protoPi0PFOs)
xAOD::TauJet_v2::shotPFO
const PFO * shotPFO(size_t i) const
Get the pointer to a given shot PFO associated with this tau.
xAOD::TauJet_v2::panTauDetail
xAODTAU_return_type< T >::type panTauDetail(TauJetParameters::PanTauDetails panTauDetail) const
Definition: TauJet_v2.h:199
xAOD::TauJet_v2::neutralPFOLinks
const PFOLinks_t & neutralPFOLinks() const
xAOD::TauJet_v2::trackLinks
const TrackParticleLinks_t & trackLinks() const
xAOD::TauJet_v2::setPanTauDetail
void setPanTauDetail(TauJetParameters::PanTauDetails panTauDetail, int value)
Definition: TauJet_v2.cxx:369
xAOD::TauJet_v2::phiPanTauCellBased
double phiPanTauCellBased() const
xAOD::IParticle::FourMom_t
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:69
xAOD::TauJet_v2::setJet
void setJet(const xAOD::JetContainer *cont, const xAOD::Jet *jet)
Definition: TauJet_v2.cxx:582
xAOD::TauJet_v2::detail
bool detail(TauJetParameters::Detail detail, int &value) const
Get and set values of common details variables via enum.
Definition: TauJet_v2.cxx:298
xAOD::TauJet_v2::etaIntermediateAxis
double etaIntermediateAxis() const
xAOD::TauJet_v2::ptIntermediateAxis
double ptIntermediateAxis() const
xAOD::TauJet_v2::protoPi0PFOLinks
const PFOLinks_t & protoPi0PFOLinks() const
xAOD::TauJet_v2::jetLink
const JetLink_t & jetLink() const
xAOD::TauJetParameters::Detail
Detail
Enum for tau parameters - used mainly for backward compatibility with the analysis code.
Definition: TauDefs.h:156
DATAVECTOR_BASE
DATAVECTOR_BASE(xAOD::TauJet_v2, xAOD::IParticle)
xAOD::TauJet_v2::trackEtaStrip
float trackEtaStrip(unsigned int numTrack) const
Definition: TauJet_v2.cxx:474
xAOD::TauJet_v2::nPi0PFOs
size_t nPi0PFOs() const
Get the number of pi0 PFO particles associated with this tau.
Definition: TauJet_v2.cxx:769
TauDefs.h
xAOD::TauJet_v2::addPi0PFOLink
void addPi0PFOLink(const ElementLink< PFOContainer > &pfo)
add a pi0 PFO to the tau
Definition: TauJet_v2.cxx:773
xAOD::TauJet_v2::protoPi0PFO
const PFO * protoPi0PFO(size_t i) const
Get the pointer to a given cellbased_pi0 PFO associated with this tau.
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
xAOD::TauJet_v2::protoChargedPFO
const PFO * protoChargedPFO(size_t i) const
Get the pointer to a given cellbased_charged PFO associated with this tau.
xAOD::TauJet_v2::discriminant
double discriminant(TauJetParameters::TauID discID) const
Get value of discriminant.
Definition: TauJet_v2.cxx:236
xAOD::TauJet_v2::nShotPFOs
size_t nShotPFOs() const
Get the number of shot PFO particles associated with this tau.
Definition: TauJet_v2.cxx:677
xAOD::TauJet_v2::phiJetSeed
double phiJetSeed() const
xAOD::TauJet_v2::pi0ConeDR
float pi0ConeDR() const
xAOD::TauJet_v2::setChargedPFOLinks
void setChargedPFOLinks(const PFOLinks_t &chargedPFOs)
xAOD::TauJet_v2::charge
float charge() const
xAOD::TauJetParameters::TauCalibType
TauCalibType
Enum for tau calib type.
Definition: TauDefs.h:335
lumiFormat.i
int i
Definition: lumiFormat.py:85
xAOD::TauJet_v2::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
IParticleContainer.h
xAOD::TauJet_v2::VertexLink_t
ElementLink< xAOD::VertexContainer > VertexLink_t
Definition: TauJet_v2.h:219
xAOD::TauJet_v2::etaPanTauCellBased
double etaPanTauCellBased() const
xAOD::TauJet_v2::trackFilterQuality
int trackFilterQuality() const
xAOD::TauJet_v2::ptDetectorAxis
double ptDetectorAxis() const
xAOD::TauJet_v2::jet
const Jet * jet() const
xAOD::TauJet_v2::addOtherTrackLink
void addOtherTrackLink(const ElementLink< TrackParticleContainer > &tr)
add a track to the tau
Definition: TauJet_v2.cxx:558
xAOD::TauJet_v2::neutralPFO
const PFO * neutralPFO(size_t i) const
Get the pointer to a given neutral PFO associated with this tau.
xAOD::TauJet_v2::ROIWord
unsigned int ROIWord() const
the ROIWord, in case TauJet is used in EF trigger
xAOD::TauJet_v2::nNeutralPFOs
size_t nNeutralPFOs() const
Get the number of neutral PFO particles associated with this tau.
Definition: TauJet_v2.cxx:738
xAOD::TauJet_v2::flag
bool flag(TauJetParameters::VetoFlags flag) const
Get veto flag.
Definition: TauJet_v2.cxx:285
xAOD::TauJet_v2::setDetail
void setDetail(TauJetParameters::Detail detail, int value)
Definition: TauJet_v2.cxx:326
xAOD::TauJet_v2::protoNeutralPFOLinks
const PFOLinks_t & protoNeutralPFOLinks() const
xAOD::TauJet_v2
Class describing a tau jet.
Definition: TauJet_v2.h:38
xAOD::TauJet_v2::panTauDetail
bool panTauDetail(TauJetParameters::PanTauDetails panTauDetail, int &value) const
Get and set values of pantau details variables via enum.
Definition: TauJet_v2.cxx:341
xAOD::TauJet_v2::setTrackFilterProngs
void setTrackFilterProngs(int)
xAOD::TauJet_v2::mTauEtaCalib
double mTauEtaCalib() const
xAOD::TauJet_v2::setTrackFlag
void setTrackFlag(const TrackParticle *track, TauJetParameters::TauTrackFlag flag, bool value)
Definition: TauJet_v2.cxx:436
xAOD::TauJet_v2::setSecondaryVertexLink
void setSecondaryVertexLink(const VertexLink_t &vertexLink)
xAOD::TauJet_v2::nWideTracks
size_t nWideTracks() const
Get the number of track particles associated with this tau.
Definition: TauJet_v2.cxx:527
xAOD::TauJet_v2::setProtoNeutralPFOLinks
void setProtoNeutralPFOLinks(const PFOLinks_t &protoNeutralPFOs)
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
xAOD::TauJet_v2::ptJetSeed
double ptJetSeed() const
xAOD::TauJet_v2::etaTauEnergyScale
double etaTauEnergyScale() const
xAOD::TauJet_v2::addProtoNeutralPFOLink
void addProtoNeutralPFOLink(const ElementLink< PFOContainer > &pfo)
add a cellbased_neutral PFO to the tau
Definition: TauJet_v2.cxx:837
PFO
Definition: ClusterMomentPlots.h:15
xAOD::TauJet_v2::etaDetectorAxis
double etaDetectorAxis() const
xAOD::TauJet_v2::clearChargedPFOLinks
void clearChargedPFOLinks()
Remove all charged PFOs from the tau.
Definition: TauJet_v2.cxx:717
xAOD::TauJet_v2::clearTrackLinks
void clearTrackLinks()
Remove all tracks from the tau.
Definition: TauJet_v2.cxx:403
xAOD::TauJet_v2::clearWideTrackLinks
void clearWideTrackLinks()
Remove all tracks from the tau.
Definition: TauJet_v2.cxx:537
xAOD::xAODTAU_return_type
Definition: TauDefs.h:24
xAOD::TauJet_v2::setVertexLink
void setVertexLink(const VertexLink_t &vertexLink)
xAOD::TauJet_v2::mIntermediateAxis
double mIntermediateAxis() const
xAOD::TauJet_v2::track
const TrackParticle * track(size_t i) const
Get the pointer to a given track associated with this tau.
xAOD::TauJet_v2::genvecP4
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : internal taus type.
Definition: TauJet_v2.cxx:111
xAOD::TauJet_v2::addTrackLink
void addTrackLink(const ElementLink< TrackParticleContainer > &tr)
add a track to the tau
Definition: TauJet_v2.cxx:397
xAOD::TauJet_v2::trackFlag
bool trackFlag(const TrackParticle *track, TauJetParameters::TauTrackFlag flag) const
Definition: TauJet_v2.cxx:409
xAOD::TauJet_v2::m
virtual double m() const
The invariant mass of the particle.
xAOD::TauJet_v2::mPanTauCellBased
double mPanTauCellBased() const
xAOD::TauJet_v2::clearPi0PFOLinks
void clearPi0PFOLinks()
Remove all pi0 PFOs from the tau.
Definition: TauJet_v2.cxx:779
xAOD::TauJet_v2::pi0PFOLinks
const PFOLinks_t & pi0PFOLinks() const
xAOD::TauJet_v2::clearProtoNeutralPFOLinks
void clearProtoNeutralPFOLinks()
Remove all cellbased_neutral PFOs from the tau.
Definition: TauJet_v2.cxx:843
xAOD::TauJet_v2::phiTrigCaloOnly
double phiTrigCaloOnly() const
xAOD::TauJet_v2::etaPanTauCellBasedProto
double etaPanTauCellBasedProto() const
PlotSFuncertainty.calib
calib
Definition: PlotSFuncertainty.py:110
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
DataVector.h
An STL vector of pointers that by default owns its pointed-to elements.
xAOD::TauJet_v2::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
xAOD::TauJet_v2::setPi0PFOLinks
void setPi0PFOLinks(const PFOLinks_t &pi0PFOs)
xAOD::TauJet_v2::hadronicPFO
const PFO * hadronicPFO(size_t i) const
Get the pointer to a given hadronic PFO associated with this tau.
VertexContainer.h
xAOD::TauJetParameters::PanTauDetails
PanTauDetails
Enum for tau details (scalar) calculated by pantau.
Definition: TauDefs.h:355
xAOD::TauJet_v2::phiIntermediateAxis
double phiIntermediateAxis() const
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
JetContainer.h
xAOD::TauJet_v2::ptPanTauCellBased
double ptPanTauCellBased() const
xAOD::TauJet_v2::secondaryVertex
const Vertex * secondaryVertex() const
xAOD::TauJet_v2::nTracks
size_t nTracks() const
Definition: TauJet_v2.cxx:393
xAOD::TauJet_v2::rapidity
virtual double rapidity() const
The true rapidity (y) of the particle.
Definition: TauJet_v2.cxx:101
xAOD::TauJet_v2::nProtoPi0PFOs
size_t nProtoPi0PFOs() const
Get the number of cellbased_pi0 PFO particles associated with this tau.
Definition: TauJet_v2.cxx:864
xAOD::TauJet_v2::protoChargedPFOLinks
const PFOLinks_t & protoChargedPFOLinks() const
cellbased pfos
xAOD::TauJet_v2::setTrackLinks
void setTrackLinks(const TrackParticleLinks_t &trackParticles)
xAOD::TauJetParameters::IsTauFlag
IsTauFlag
Enum for IsTau flags.
Definition: TauDefs.h:116
xAOD::TauJet_v2::chargedPFOLinks
const PFOLinks_t & chargedPFOLinks() const
default pfos
xAOD::TauJet_v2::setROIWord
void setROIWord(unsigned int)
xAOD::TauJet_v2::p4
virtual FourMom_t p4() const
The full 4-momentum of the particle.
Definition: TauJet_v2.cxx:105
xAOD::TauJet_v2::shotPFOLinks
const PFOLinks_t & shotPFOLinks() const
xAOD::TauJet_v2::phiDetectorAxis
double phiDetectorAxis() const
xAOD::TauJet_v2::addProtoPi0PFOLink
void addProtoPi0PFOLink(const ElementLink< PFOContainer > &pfo)
add a cellbased_pi0 PFO to the tau
Definition: TauJet_v2.cxx:868
xAOD::TauJet_v2::PFOLinks_t
std::vector< ElementLink< xAOD::PFOContainer > > PFOLinks_t
Definition: TauJet_v2.h:317
xAOD::TauJet_v2::setPi0ConeDR
void setPi0ConeDR(float)
xAOD::TauJet_v2::ptTrigCaloOnly
double ptTrigCaloOnly() const
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
xAOD::TauJet_v2::wideTrackLinks
const TrackParticleLinks_t & wideTrackLinks() const
xAOD::TauJet_v2::addHadronicPFOLink
void addHadronicPFOLink(const ElementLink< PFOContainer > &pfo)
add a hadronic PFO to the tau
Definition: TauJet_v2.cxx:652
xAOD::TauJet_v2::clearShotPFOLinks
void clearShotPFOLinks()
Remove all shot PFOs from the tau.
Definition: TauJet_v2.cxx:687
xAOD::TauJet_v2::etaJetSeed
double etaJetSeed() const
xAODType::ObjectType
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition: ObjectType.h:32
xAOD::TauJet_v2::setNeutralPFOLinks
void setNeutralPFOLinks(const PFOLinks_t &neutralPFOs)
xAOD::TauJet_v2::e
virtual double e() const
The total energy of the particle.
Definition: TauJet_v2.cxx:96
xAOD::TauJet_v2::mPanTauCellBasedProto
double mPanTauCellBasedProto() const
xAOD::TauJet_v2::detail
xAODTAU_return_type< T >::type detail(TauJetParameters::Detail detail) const
Definition: TauJet_v2.h:184
xAOD::TauJet_v2::setSecondaryVertex
void setSecondaryVertex(const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex)
Definition: TauJet_v2.cxx:624
xAOD::TauJet_v2::hasDiscriminant
bool hasDiscriminant(TauJetParameters::TauID discID) const
Check if class contains requested discriminant.
Definition: TauJet_v2.cxx:225
xAOD::TauJet_v2::phi
virtual double phi() const
The azimuthal angle ( ) of the particle.
xAOD::TauJet_v2::trackPhiStrip
float trackPhiStrip(unsigned int numTrack) const
Definition: TauJet_v2.cxx:494
xAOD::TauJet_v2::clearProtoPi0PFOLinks
void clearProtoPi0PFOLinks()
Remove all cellbased_pi0 PFOs from the tau.
Definition: TauJet_v2.cxx:874
TrackParticleContainer.h
xAOD::TauJet_v2::chargedPFO
const PFO * chargedPFO(size_t i) const
Get the pointer to a given charged PFO associated with this tau.
xAOD::TauJet_v2::phiPanTauCellBasedProto
double phiPanTauCellBasedProto() const
xAOD::TauJet_v2::JetLink_t
ElementLink< xAOD::JetContainer > JetLink_t
Definition: TauJet_v2.h:207
xAOD::TauJet_v2::setWideTrackLinks
void setWideTrackLinks(const TrackParticleLinks_t &trackParticles)
xAOD::TauJet_v2::TrackParticleLinks_t
std::vector< ElementLink< xAOD::TrackParticleContainer > > TrackParticleLinks_t
Definition: TauJet_v2.h:242