ATLAS Offline Software
TauJet_v3.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id: TauJet_v3.h 725228 2016-02-19 22:59:42Z griffith $
8 #ifndef XAODTAU_VERSIONS_TAUJET_V3_H
9 #define XAODTAU_VERSIONS_TAUJET_V3_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"
21 #include "xAODTau/TauTrack.h"
24 #include "xAODJet/JetContainer.h"
25 #include "xAODPFlow/PFOContainer.h"
27 
28 // ROOT include(s):
29 #include "Math/Vector4D.h"
30 
31 namespace xAOD {
32 
33 
34 
41  class TauJet_v3 : public IParticle {
42 
43  public:
45  TauJet_v3();
46 
49 
51  virtual double pt() const;
53  virtual double eta() const;
55  virtual double phi() const;
57  virtual double e() const;
58 
60  virtual double m() const;
62  virtual double rapidity() const;
63 
65  virtual FourMom_t p4() const;
66  virtual FourMom_t p4(const TauJetParameters::TauCalibType calib) const;
67 
69  typedef ROOT::Math::LorentzVector<ROOT::Math::PtEtaPhiM4D<double> > GenVecFourMom_t;
70 
72  GenVecFourMom_t genvecP4() const;
74 
76  void setP4(double pt, double eta, double phi, double m);
77  bool setP4(const TauJetParameters::TauCalibType calib, double pt, double eta, double phi, double m);
78 
79  //setters and getters for the individual 4-vector components at different calibration levels
80  double ptJetSeed() const;
81  double etaJetSeed() const;
82  double phiJetSeed() const;
83  double mJetSeed() const;
84 
85  double ptDetectorAxis() const;
86  double etaDetectorAxis() const;
87  double phiDetectorAxis() const;
88  double mDetectorAxis() const;
89 
90  double ptIntermediateAxis() const;
91  double etaIntermediateAxis() const;
92  double phiIntermediateAxis() const;
93  double mIntermediateAxis() const;
94 
95  double ptTauEnergyScale() const;
96  double etaTauEnergyScale() const;
97  double phiTauEnergyScale() const;
98  double mTauEnergyScale() const;
99 
100  double ptTauEtaCalib() const;
101  double etaTauEtaCalib() const;
102  double phiTauEtaCalib() const;
103  double mTauEtaCalib() const;
104 
105  double ptPanTauCellBasedProto() const;
106  double etaPanTauCellBasedProto() const;
107  double phiPanTauCellBasedProto() const;
108  double mPanTauCellBasedProto() const;
109 
110  double ptPanTauCellBased() const;
111  double etaPanTauCellBased() const;
112  double phiPanTauCellBased() const;
113  double mPanTauCellBased() const;
114 
115  double ptTrigCaloOnly() const;
116  double etaTrigCaloOnly() const;
117  double phiTrigCaloOnly() const;
118  double mTrigCaloOnly() const;
119 
120  double ptFinalCalib() const;
121  double etaFinalCalib() const;
122  double phiFinalCalib() const;
123  double mFinalCalib() const;
124 
126  virtual Type::ObjectType type() const;
127 
129 
130  // the summed up charge of all tau tracks
131  float charge() const;
132 
133  // set the charge
134  void setCharge(float);
135 
137  unsigned int ROIWord() const;
138 
139  // set the ROIWord, needed by TauTrigger
140  void setROIWord(unsigned int);
141 
144  bool hasDiscriminant( TauJetParameters::TauID discID ) const;
145 
148  double discriminant( TauJetParameters::TauID discID ) const;
149 
153  void setDiscriminant( TauJetParameters::TauID discID, double disc );
154 
157  bool isTau( TauJetParameters::IsTauFlag flag ) const;
158 
163 
165  bool detail( TauJetParameters::Detail detail, int& value ) const;
166  bool detail( TauJetParameters::Detail detail, float& value ) const;
167  bool detail( TauJetParameters::Detail detail, const IParticle* &value ) const;
171 
172  // getter for specialized types. Compilation error if used with other types.
173  template <class T>
175  {
176  T temp;
177  if (this->detail(detail,temp)) return temp;
178  else return 0;
179  }
180 
186 
187  // getter for specialized types. Compilation error if used with other types.
188  template <class T>
190  {
191  T temp;
192  if (this->panTauDetail(panTauDetail,temp)) return temp;
193  else return 0;
194  }
195 
196  //seed jet
198 
199  const JetLink_t& jetLink() const;
200 
201  void setJetLink( const JetLink_t& jetLink );
202 
203  void setJet( const xAOD::JetContainer *cont, const xAOD::Jet *jet );
204 
205  const Jet* jet() const;
206 
207 
208  //vertex that the tau comes from
210 
211  const VertexLink_t& vertexLink() const;
212 
214 
215  void setVertex( const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex );
216 
217  const Vertex* vertex() const;
218 
219 
220  //secondary vertex that the tau decays in
221 
223 
225 
226  void setSecondaryVertex( const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex );
227 
228  const Vertex* secondaryVertex() const;
229 
230 
231  //tauTracks
232  typedef std::vector< ElementLink< xAOD::TauTrackContainer > > TauTrackLinks_t;
233 
235  const TauTrackLinks_t tauTrackLinksWithMask(unsigned int) const;
238 
239 
240  //retrieve all TauJetAuxContainer::tauTrackLinks, regardless of flags
241  const TauTrackLinks_t& allTauTrackLinks() const;
242  //set all TauJetAuxContainer::tauTrackLinks
243  void setAllTauTrackLinks( const TauTrackLinks_t& tauTracks );
246  const TauTrack* trackWithMask( size_t i, unsigned int mask, int* container_index=0 ) const;
247 #ifndef XAOD_STANDALONE
248  //see TauxAODHelpers for a solution in XAOD_STANDALONE
250 #endif
254  std::vector<const TauTrack*> tracksWithMask(unsigned int mask ) const;
256  std::vector<const TauTrack*> allTracks() const;
257  //number of tracks with a given classification
259  //number of tracks classified as classifiedCharged
260  size_t nTracksCharged() const;
261  //number of tracks classified as classifiedIsolation
262  size_t nTracksIsolation() const;
263  //number of tracks with a given classification
264  size_t nTracksWithMask(unsigned int classification) const;
265  //all tracks regardless of classification or lack thereof
266  size_t nAllTracks() const;
270  void clearTauTrackLinks();
271 
272  //clusters
273  typedef std::vector< ElementLink< xAOD::IParticleContainer > > IParticleLinks_t;
274 
276 
279  const IParticle* cluster( size_t i) const;
280 
281  //* @brief Get the clusters */
282  std::vector<const IParticle*> clusters() const;
283 
285  FourMom_t calibratedCluster( size_t i, xAOD::CaloCluster::State state=xAOD::CaloCluster::State::CALIBRATED) const;
286  //number of cluster with associated to tau
287  size_t nClusters() const;
291  void clearClusterLinks();
292 
293  //* @brief Get the clusters corrected to poinst at tau vertex*/
294  std::vector<xAOD::CaloVertexedTopoCluster> vertexedClusters() const;
295 
296  const IParticleLinks_t& pi0Links() const;
297 
298  void setPi0Links( const IParticleLinks_t& pi0s );
300  const IParticle* pi0( size_t i) const;
301  //number of pi0 with associated to tau
302  size_t nPi0s() const;
306  void clearPi0Links();
307 
308 
309  //name accessors for trackFilterProngs
310  int trackFilterProngs() const;
311  //name accessors for trackFilterProngs
313 
314  //name accessors for trackFilterQuality
315  int trackFilterQuality() const;
316  //name accessors for trackFilterQuality
318 
319  //name accessors for pi0ConeDR
320  float pi0ConeDR() const;
321  //name accessors for pi0ConeDR
322  void setPi0ConeDR(float);
323 
324 
325  typedef std::vector< ElementLink< xAOD::PFOContainer > > PFOLinks_t;
326 
327 
328  //photon shot PFOs
329  const PFOLinks_t& hadronicPFOLinks() const;
330 
331  void setHadronicPFOLinks( const PFOLinks_t& hadronicPFOs );
333  const PFO* hadronicPFO( size_t i ) const;
335  size_t nHadronicPFOs() const;
339  void clearHadronicPFOLinks();
340 
341 
342  //photon shot PFOs
343  const PFOLinks_t& shotPFOLinks() const;
344 
345  void setShotPFOLinks( const PFOLinks_t& shotPFOs );
347  const PFO* shotPFO( size_t i ) const;
349  size_t nShotPFOs() const;
353  void clearShotPFOLinks();
354 
355 
357  //
358  //charged PFOs
359  const PFOLinks_t& chargedPFOLinks() const;
360 
361  void setChargedPFOLinks( const PFOLinks_t& chargedPFOs );
363  const PFO* chargedPFO( size_t i ) const;
365  size_t nChargedPFOs() const;
369  void clearChargedPFOLinks();
370 
371 
372  //neutral PFOs
373  const PFOLinks_t& neutralPFOLinks() const;
374 
375  void setNeutralPFOLinks( const PFOLinks_t& neutralPFOs );
377  const PFO* neutralPFO( size_t i ) const;
379  size_t nNeutralPFOs() const;
383  void clearNeutralPFOLinks();
384 
385 
386  //pi0 PFOs
387  const PFOLinks_t& pi0PFOLinks() const;
388 
389  void setPi0PFOLinks( const PFOLinks_t& pi0PFOs );
391  const PFO* pi0PFO( size_t i ) const;
393  size_t nPi0PFOs() const;
395  void addPi0PFOLink( const ElementLink< PFOContainer >& pfo);
397  void clearPi0PFOLinks();
398 
399 
400 
401 
403  //
404  //cellbased_charged PFOs
406 
407  void setProtoChargedPFOLinks( const PFOLinks_t& protoChargedPFOs );
409  const PFO* protoChargedPFO( size_t i ) const;
411  size_t nProtoChargedPFOs() const;
416 
417 
418  //cellbased_neutral PFOs
420 
421  void setProtoNeutralPFOLinks( const PFOLinks_t& protoNeutralPFOs );
423  const PFO* protoNeutralPFO( size_t i ) const;
425  size_t nProtoNeutralPFOs() const;
430 
431 
432  //pi0 PFOs
433  const PFOLinks_t& protoPi0PFOLinks() const;
434 
435  void setProtoPi0PFOLinks( const PFOLinks_t& protoPi0PFOs );
437  const PFO* protoPi0PFO( size_t i ) const;
439  size_t nProtoPi0PFOs() const;
443  void clearProtoPi0PFOLinks();
444 
445 
446 
448 
449 
450  void dump() const;
451 
452 
453  }; // class TauJet
454 
455 } // namespace xAOD
456 
457 
458 // Declare IParticle as a base class of TauJet_v3:
461 
462 #endif // XAODTAU_VERSIONS_TAUJET_V3_H
463 
464 // LocalWords: newROIWord
xAOD::TauJetParameters::TauTrackFlag
TauTrackFlag
Enum for tau track flags.
Definition: TauDefs.h:400
xAOD::TauJet_v3::phiDetectorAxis
double phiDetectorAxis() const
xAOD::TauJet_v3::trackFilterQuality
int trackFilterQuality() const
xAOD::TauJet_v3::panTauDetail
xAODTAU_return_type< T >::type panTauDetail(TauJetParameters::PanTauDetails panTauDetail) const
Definition: TauJet_v3.h:189
xAOD::TauJet_v3::etaTrigCaloOnly
double etaTrigCaloOnly() const
xAOD::TauJet_v3::etaTauEtaCalib
double etaTauEtaCalib() const
xAOD::TauJet_v3::addShotPFOLink
void addShotPFOLink(const ElementLink< PFOContainer > &pfo)
add a shot PFO to the tau
Definition: TauJet_v3.cxx:752
xAOD::TauJet_v3::mTauEnergyScale
double mTauEnergyScale() const
xAOD::TauJet_v3::hadronicPFOLinks
const PFOLinks_t & hadronicPFOLinks() const
DATAVECTOR_BASE
DATAVECTOR_BASE(xAOD::TauJet_v3, xAOD::IParticle)
xAOD::TauJet_v3::mDetectorAxis
double mDetectorAxis() const
xAOD::TauJet_v3::etaTauEnergyScale
double etaTauEnergyScale() const
xAOD::TauJet_v3::setAllTauTrackLinks
void setAllTauTrackLinks(const TauTrackLinks_t &tauTracks)
Definition: TauJet_v3.cxx:396
xAOD::TauJet_v3::clusterLinks
const IParticleLinks_t & clusterLinks() const
xAOD::TauJet_v3::jet
const Jet * jet() const
xAOD::TauJet_v3::hadronicPFO
const PFO * hadronicPFO(size_t i) const
Get the pointer to a given hadronic PFO associated with this tau.
xAOD::TauJet_v3::mPanTauCellBased
double mPanTauCellBased() const
xAOD::TauJet_v3::setProtoNeutralPFOLinks
void setProtoNeutralPFOLinks(const PFOLinks_t &protoNeutralPFOs)
IParticle.h
xAOD::TauJet_v3::pi0ConeDR
float pi0ConeDR() const
xAOD::TauJet_v3::nNeutralPFOs
size_t nNeutralPFOs() const
Get the number of neutral PFO particles associated with this tau.
Definition: TauJet_v3.cxx:809
xAOD::TauJet_v3::nTracksWithMask
size_t nTracksWithMask(unsigned int classification) const
Definition: TauJet_v3.cxx:504
xAOD::TauJet_v3::trackWithMask
const TauTrack * trackWithMask(size_t i, unsigned int mask, int *container_index=0) const
Definition: TauJet_v3.cxx:427
xAOD::TauJet_v3::discriminant
double discriminant(TauJetParameters::TauID discID) const
Get value of discriminant.
Definition: TauJet_v3.cxx:225
xAOD::TauJet_v3::nAllTracks
size_t nAllTracks() const
Definition: TauJet_v3.cxx:516
xAOD::TauJet_v3::phiIntermediateAxis
double phiIntermediateAxis() const
xAOD::TauJet_v3::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
xAOD::TauJet_v3::nProtoNeutralPFOs
size_t nProtoNeutralPFOs() const
Get the number of cellbased_neutral PFO particles associated with this tau.
Definition: TauJet_v3.cxx:904
xAOD::TauJet_v3::etaDetectorAxis
double etaDetectorAxis() const
xAOD::TauJet_v3::etaIntermediateAxis
double etaIntermediateAxis() const
xAOD::TauJet_v3::clearProtoChargedPFOLinks
void clearProtoChargedPFOLinks()
Remove all cellbased_charged PFOs from the tau.
Definition: TauJet_v3.cxx:884
xAOD::TauJet_v3::phiFinalCalib
double phiFinalCalib() const
xAOD::TauJet_v3::setJetLink
void setJetLink(const JetLink_t &jetLink)
xAOD::TauJet_v3::setPanTauDetail
void setPanTauDetail(TauJetParameters::PanTauDetails panTauDetail, int value)
Definition: TauJet_v3.cxx:367
xAOD::TauJet_v3::setCharge
void setCharge(float)
xAOD::TauJet_v3::mPanTauCellBasedProto
double mPanTauCellBasedProto() const
xAOD::TauJet_v3::clearTauTrackLinks
void clearTauTrackLinks()
Remove all tracks from the tau.
Definition: TauJet_v3.cxx:527
xAOD::TauJet_v3::tracksWithMask
std::vector< const TauTrack * > tracksWithMask(unsigned int mask) const
Get the v<const pointer> to a given tauTrack collection associated with this tau.
Definition: TauJet_v3.cxx:467
xAOD::TauJet_v3::m
virtual double m() const
The invariant mass of the particle.
xAOD::TauJet_v3::addChargedPFOLink
void addChargedPFOLink(const ElementLink< PFOContainer > &pfo)
add a charged PFO to the tau
Definition: TauJet_v3.cxx:782
xAOD::TauJet_v3::etaFinalCalib
double etaFinalCalib() const
xAOD::CaloCluster_v1::State
State
enum of possible signal states.
Definition: CaloCluster_v1.h:307
xAOD::TauJet_v3::nTracks
size_t nTracks(TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
Definition: TauJet_v3.cxx:488
xAOD::TauJet_v3::clearNeutralPFOLinks
void clearNeutralPFOLinks()
Remove all neutral PFOs from the tau.
Definition: TauJet_v3.cxx:819
xAOD::TauJet_v3::setProtoPi0PFOLinks
void setProtoPi0PFOLinks(const PFOLinks_t &protoPi0PFOs)
xAOD::TauJetParameters::classifiedCharged
@ classifiedCharged
Definition: TauDefs.h:406
xAOD::TauJet_v3::setNeutralPFOLinks
void setNeutralPFOLinks(const PFOLinks_t &neutralPFOs)
xAOD::TauJet_v3::clearClusterLinks
void clearClusterLinks()
Remove all clusters from the tau.
Definition: TauJet_v3.cxx:580
xAOD::TauJet_v3::clearPi0PFOLinks
void clearPi0PFOLinks()
Remove all pi0 PFOs from the tau.
Definition: TauJet_v3.cxx:850
PFOContainer.h
xAOD::TauJet_v3::clearPi0Links
void clearPi0Links()
Remove all pi0s from the tau.
Definition: TauJet_v3.cxx:614
xAOD::TauJet_v3::cluster
const IParticle * cluster(size_t i) const
Get the pointer to a given cluster associated with this tau.
xAOD::TauJet_v3::dump
void dump() const
Definition: TauJet_v3.cxx:953
xAOD::TauJet_v3::type
virtual Type::ObjectType type() const
The type of the object as a simple enumeration.
Definition: TauJet_v3.cxx:204
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_v3::hasDiscriminant
bool hasDiscriminant(TauJetParameters::TauID discID) const
Check if class contains requested discriminant.
Definition: TauJet_v3.cxx:214
xAOD::TauJet_v3::panTauDetail
bool panTauDetail(TauJetParameters::PanTauDetails panTauDetail, int &value) const
Get and set values of pantau details variables via enum.
Definition: TauJet_v3.cxx:339
xAOD::TauJet_v3::trackNonConst
TauTrack * trackNonConst(size_t i, TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged)
Definition: TauJet_v3.cxx:448
xAOD::TauJet_v3::protoChargedPFO
const PFO * protoChargedPFO(size_t i) const
Get the pointer to a given cellbased_charged PFO associated with this tau.
TauTrackContainer.h
xAOD::TauJet_v3::nHadronicPFOs
size_t nHadronicPFOs() const
Get the number of hadronic PFO particles associated with this tau.
Definition: TauJet_v3.cxx:719
xAOD::TauJet_v3::ptJetSeed
double ptJetSeed() const
xAOD::TauJet_v3::setVertex
void setVertex(const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex)
Definition: TauJet_v3.cxx:667
xAOD::TauJetParameters::TauID
TauID
Enum for discriminants.
Definition: TauDefs.h:46
xAOD::TauJet_v3::addProtoNeutralPFOLink
void addProtoNeutralPFOLink(const ElementLink< PFOContainer > &pfo)
add a cellbased_neutral PFO to the tau
Definition: TauJet_v3.cxx:908
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
xAOD::TauJet_v3::e
virtual double e() const
The total energy of the particle.
Definition: TauJet_v3.cxx:87
xAOD::TauJet_v3::ptDetectorAxis
double ptDetectorAxis() const
xAOD::TauJet_v3::nProtoPi0PFOs
size_t nProtoPi0PFOs() const
Get the number of cellbased_pi0 PFO particles associated with this tau.
Definition: TauJet_v3.cxx:935
xAOD::TauJet_v3::nClusters
size_t nClusters() const
Definition: TauJet_v3.cxx:570
xAOD::TauJet_v3::phiTrigCaloOnly
double phiTrigCaloOnly() const
xAOD::TauJet_v3::nPi0PFOs
size_t nPi0PFOs() const
Get the number of pi0 PFO particles associated with this tau.
Definition: TauJet_v3.cxx:840
xAOD::TauJet_v3::setIsTau
void setIsTau(TauJetParameters::IsTauFlag flag, bool value)
Set Flag for tau acceptance based on predefined arbitrary criteria.
Definition: TauJet_v3.cxx:252
xAOD::TauJet_v3::genvecP4
GenVecFourMom_t genvecP4() const
The full 4-momentum of the particle : internal taus type.
Definition: TauJet_v3.cxx:102
xAOD::TauJet_v3::setP4
void setP4(double pt, double eta, double phi, double m)
Set methods for IParticle values.
Definition: TauJet_v3.cxx:171
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:459
xAOD::TauJet_v3::rapidity
virtual double rapidity() const
The true rapidity (y) of the particle.
Definition: TauJet_v3.cxx:92
xAOD::TauJet_v3::mTauEtaCalib
double mTauEtaCalib() const
xAOD::TauJet_v3::clusters
std::vector< const IParticle * > clusters() const
Definition: TauJet_v3.cxx:545
xAOD::TauJet_v3::pi0PFO
const PFO * pi0PFO(size_t i) const
Get the pointer to a given pi0 PFO associated with this tau.
xAOD::IParticle::FourMom_t
TLorentzVector FourMom_t
Definition of the 4-momentum type.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:69
xAOD::TauJet_v3::setClusterLinks
void setClusterLinks(const IParticleLinks_t &clusters)
xAOD::TauJet_v3::phiJetSeed
double phiJetSeed() const
xAOD::TauJet_v3::ROIWord
unsigned int ROIWord() const
the ROIWord, in case TauJet is used in EF trigger
xAOD::TauJet_v3::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
xAOD::TauJetParameters::Detail
Detail
Enum for tau parameters - used mainly for backward compatibility with the analysis code.
Definition: TauDefs.h:156
xAOD::TauJet_v3::VertexLink_t
ElementLink< xAOD::VertexContainer > VertexLink_t
Definition: TauJet_v3.h:209
xAOD::TauJet_v3::phi
virtual double phi() const
The azimuthal angle ( ) of the particle.
xAOD::TauJet_v3::tauTrackLinksWithMask
const TauTrackLinks_t tauTrackLinksWithMask(unsigned int) const
Definition: TauJet_v3.cxx:406
TauDefs.h
xAOD::TauJet_v3::secondaryVertexLink
const VertexLink_t & secondaryVertexLink() const
xAOD::TauJet_v3::etaPanTauCellBased
double etaPanTauCellBased() const
xAOD::TauJet_v3::addPi0PFOLink
void addPi0PFOLink(const ElementLink< PFOContainer > &pfo)
add a pi0 PFO to the tau
Definition: TauJet_v3.cxx:844
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
xAOD::TauJet_v3::ptTauEnergyScale
double ptTauEnergyScale() const
xAOD::TauJet_v3::clearProtoPi0PFOLinks
void clearProtoPi0PFOLinks()
Remove all cellbased_pi0 PFOs from the tau.
Definition: TauJet_v3.cxx:945
xAOD::TauJet_v3::nTracksCharged
size_t nTracksCharged() const
Definition: TauJet_v3.cxx:494
xAOD::TauJet_v3::protoNeutralPFOLinks
const PFOLinks_t & protoNeutralPFOLinks() const
xAOD::TauJet_v3::neutralPFOLinks
const PFOLinks_t & neutralPFOLinks() const
xAOD::TauJetParameters::TauCalibType
TauCalibType
Enum for tau calib type.
Definition: TauDefs.h:335
lumiFormat.i
int i
Definition: lumiFormat.py:85
xAOD::TauJet_v3::allTauTrackLinks
const TauTrackLinks_t & allTauTrackLinks() const
Definition: TauJet_v3.cxx:392
xAOD::TauJet_v3::setSecondaryVertex
void setSecondaryVertex(const xAOD::VertexContainer *cont, const xAOD::Vertex *vertex)
Definition: TauJet_v3.cxx:695
xAOD::TauJet_v3::shotPFOLinks
const PFOLinks_t & shotPFOLinks() const
xAOD::TauJet_v3::clearHadronicPFOLinks
void clearHadronicPFOLinks()
Remove all hadronic PFOs from the tau.
Definition: TauJet_v3.cxx:729
IParticleContainer.h
xAOD::TauJet_v3::setSecondaryVertexLink
void setSecondaryVertexLink(const VertexLink_t &vertexLink)
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
xAOD::TauJet_v3::setShotPFOLinks
void setShotPFOLinks(const PFOLinks_t &shotPFOs)
xAOD::TauJet_v3::etaJetSeed
double etaJetSeed() const
xAOD::TauJet_v3::setTrackFilterProngs
void setTrackFilterProngs(int)
master.flag
bool flag
Definition: master.py:29
xAOD::TauJet_v3::jetLink
const JetLink_t & jetLink() const
xAOD::TauJet_v3::addHadronicPFOLink
void addHadronicPFOLink(const ElementLink< PFOContainer > &pfo)
add a hadronic PFO to the tau
Definition: TauJet_v3.cxx:723
xAOD::TauJet_v3::track
const TauTrack * track(size_t i, TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged, int *container_index=0) const
Get the pointer to a given tauTrack associated with this tau /*container index needed by trackNonCons...
Definition: TauJet_v3.cxx:422
xAOD::TauJet_v3::addTauTrackLink
void addTauTrackLink(const ElementLink< TauTrackContainer > &tr)
add a TauTrack to the tau
Definition: TauJet_v3.cxx:523
xAOD::TauJet_v3::setTrackFilterQuality
void setTrackFilterQuality(int)
xAOD::TauJet_v3::addNeutralPFOLink
void addNeutralPFOLink(const ElementLink< PFOContainer > &pfo)
add a neutral PFO to the tau
Definition: TauJet_v3.cxx:813
xAOD::TauJet_v3::ptTauEtaCalib
double ptTauEtaCalib() const
xAOD::TauJet_v3::etaPanTauCellBasedProto
double etaPanTauCellBasedProto() const
xAOD::TauJet_v3::pi0
const IParticle * pi0(size_t i) const
Get the pointer to a given pi0 associated with this tau.
xAOD::TauJet_v3::ptTrigCaloOnly
double ptTrigCaloOnly() const
xAOD::TauJet_v3::IParticleLinks_t
std::vector< ElementLink< xAOD::IParticleContainer > > IParticleLinks_t
Definition: TauJet_v3.h:273
xAOD::TauJet_v3::setHadronicPFOLinks
void setHadronicPFOLinks(const PFOLinks_t &hadronicPFOs)
xAOD::TauJet_v3::addPi0Link
void addPi0Link(const ElementLink< IParticleContainer > &tr)
add a pi0 link to the tau
Definition: TauJet_v3.cxx:609
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
xAOD::TauJet_v3::phiTauEnergyScale
double phiTauEnergyScale() const
xAOD::TauJet_v3::allTauTrackLinksNonConst
TauTrackLinks_t & allTauTrackLinksNonConst()
In order to sort track links.
Definition: TauJet_v3.cxx:418
xAOD::TauJet_v3::mJetSeed
double mJetSeed() const
xAOD::TauJet_v3::GenVecFourMom_t
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > GenVecFourMom_t
Base 4 Momentum type for taus.
Definition: TauJet_v3.h:69
xAOD::TauJet_v3::mTrigCaloOnly
double mTrigCaloOnly() const
PFO
Definition: ClusterMomentPlots.h:15
xAOD::TauJet_v3::protoPi0PFOLinks
const PFOLinks_t & protoPi0PFOLinks() const
xAOD::TauJet_v3::setJet
void setJet(const xAOD::JetContainer *cont, const xAOD::Jet *jet)
Definition: TauJet_v3.cxx:643
xAOD::TauJet_v3::setPi0Links
void setPi0Links(const IParticleLinks_t &pi0s)
xAOD::xAODTAU_return_type
Definition: TauDefs.h:24
xAOD::TauJet_v3::addClusterLink
void addClusterLink(const ElementLink< IParticleContainer > &tr)
add a cluster link to the tau
Definition: TauJet_v3.cxx:575
xAOD::TauJet_v3::detail
bool detail(TauJetParameters::Detail detail, int &value) const
Get and set values of common details variables via enum.
Definition: TauJet_v3.cxx:264
xAOD::TauJet_v3::phiPanTauCellBased
double phiPanTauCellBased() const
xAOD::TauJet_v3::clearProtoNeutralPFOLinks
void clearProtoNeutralPFOLinks()
Remove all cellbased_neutral PFOs from the tau.
Definition: TauJet_v3.cxx:914
xAOD::TauJet_v3::addProtoPi0PFOLink
void addProtoPi0PFOLink(const ElementLink< PFOContainer > &pfo)
add a cellbased_pi0 PFO to the tau
Definition: TauJet_v3.cxx:939
xAOD::TauJet_v3::calibratedCluster
FourMom_t calibratedCluster(size_t i, xAOD::CaloCluster::State state=xAOD::CaloCluster::State::CALIBRATED) const
Get TLV to a given cluster in calibrated state.
Definition: TauJet_v3.cxx:561
xAOD::TauJet_v3::setProtoChargedPFOLinks
void setProtoChargedPFOLinks(const PFOLinks_t &protoChargedPFOs)
xAOD::TauJet_v3::nPi0s
size_t nPi0s() const
Definition: TauJet_v3.cxx:604
xAOD::TauJet_v3::pi0PFOLinks
const PFOLinks_t & pi0PFOLinks() const
TauTrack.h
xAOD::TauJet_v3::JetLink_t
ElementLink< xAOD::JetContainer > JetLink_t
Definition: TauJet_v3.h:197
CaloVertexedTopoCluster.h
Evaluate cluster kinematics with a different vertex / signal state.
xAOD::TauJet_v3::vertexedClusters
std::vector< xAOD::CaloVertexedTopoCluster > vertexedClusters() const
Definition: TauJet_v3.cxx:586
xAOD::TauJet_v3::setChargedPFOLinks
void setChargedPFOLinks(const PFOLinks_t &chargedPFOs)
xAOD::TauJet_v3::protoPi0PFO
const PFO * protoPi0PFO(size_t i) const
Get the pointer to a given cellbased_pi0 PFO associated with this tau.
xAOD::TauJet_v3::PFOLinks_t
std::vector< ElementLink< xAOD::PFOContainer > > PFOLinks_t
Definition: TauJet_v3.h:325
xAOD::TauJet_v3::clearChargedPFOLinks
void clearChargedPFOLinks()
Remove all charged PFOs from the tau.
Definition: TauJet_v3.cxx:788
xAOD::TauJet_v3::tauTrackLinks
const TauTrackLinks_t tauTrackLinks(TauJetParameters::TauTrackFlag=TauJetParameters::TauTrackFlag::classifiedCharged) const
Definition: TauJet_v3.cxx:401
PlotSFuncertainty.calib
calib
Definition: PlotSFuncertainty.py:110
xAOD::TauJet_v3::setPi0ConeDR
void setPi0ConeDR(float)
xAOD::TauJet_v3::phiTauEtaCalib
double phiTauEtaCalib() const
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
xAOD::TauJet_v3::isTau
bool isTau(TauJetParameters::IsTauFlag flag) const
Get Flag for tau acceptance based on predefined arbitrary criteria.
Definition: TauJet_v3.cxx:245
DataVector.h
An STL vector of pointers that by default owns its pointed-to elements.
xAOD::TauJet_v3::setPi0PFOLinks
void setPi0PFOLinks(const PFOLinks_t &pi0PFOs)
VertexContainer.h
xAOD::TauJet_v3::mIntermediateAxis
double mIntermediateAxis() const
xAOD::TauJetParameters::PanTauDetails
PanTauDetails
Enum for tau details (scalar) calculated by pantau.
Definition: TauDefs.h:355
xAOD::TauJet_v3::setROIWord
void setROIWord(unsigned int)
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
xAOD::TauJet_v3::setVertexLink
void setVertexLink(const VertexLink_t &vertexLink)
JetContainer.h
xAOD::TauJet_v3::TauTrackLinks_t
std::vector< ElementLink< xAOD::TauTrackContainer > > TauTrackLinks_t
Definition: TauJet_v3.h:232
xAOD::TauJet_v3::TauJet_v3
TauJet_v3()
Default constructor.
Definition: TauJet_v3.cxx:21
xAOD::TauJet_v3::vertex
const Vertex * vertex() const
xAOD::TauTrack_v1
Definition: TauTrack_v1.h:27
xAOD::TauJet_v3::p4
virtual FourMom_t p4() const
The full 4-momentum of the particle.
Definition: TauJet_v3.cxx:96
xAOD::TauJet_v3::clearShotPFOLinks
void clearShotPFOLinks()
Remove all shot PFOs from the tau.
Definition: TauJet_v3.cxx:758
xAOD::TauJet_v3::charge
float charge() const
xAOD::TauJet_v3::protoChargedPFOLinks
const PFOLinks_t & protoChargedPFOLinks() const
cellbased pfos
xAOD::TauJet_v3::setDetail
void setDetail(TauJetParameters::Detail detail, int value)
Definition: TauJet_v3.cxx:309
xAOD::TauJetParameters::IsTauFlag
IsTauFlag
Enum for IsTau flags.
Definition: TauDefs.h:116
xAOD::TauJet_v3::pi0Links
const IParticleLinks_t & pi0Links() const
xAOD::TauJet_v3::protoNeutralPFO
const PFO * protoNeutralPFO(size_t i) const
Get the pointer to a given cellbased_neutral PFO associated with this tau.
xAOD::TauJet_v3::nProtoChargedPFOs
size_t nProtoChargedPFOs() const
Get the number of cellbased_charged PFO particles associated with this tau.
Definition: TauJet_v3.cxx:874
xAOD::TauJet_v3::chargedPFOLinks
const PFOLinks_t & chargedPFOLinks() const
default pfos
xAOD::TauJet_v3::addProtoChargedPFOLink
void addProtoChargedPFOLink(const ElementLink< PFOContainer > &pfo)
add a cellbased_charged PFO to the tau
Definition: TauJet_v3.cxx:878
xAOD::TauJet_v3::ptIntermediateAxis
double ptIntermediateAxis() const
xAOD::TauJet_v3::shotPFO
const PFO * shotPFO(size_t i) const
Get the pointer to a given shot PFO associated with this tau.
xAOD::TauJet_v3::nTracksIsolation
size_t nTracksIsolation() const
Definition: TauJet_v3.cxx:498
xAODType::ObjectType
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition: ObjectType.h:32
xAOD::TauJet_v3::secondaryVertex
const Vertex * secondaryVertex() const
xAOD::TauJet_v3::ptPanTauCellBased
double ptPanTauCellBased() const
xAOD::TauJet_v3::mFinalCalib
double mFinalCalib() const
xAOD::TauJet_v3::ptFinalCalib
double ptFinalCalib() const
xAOD::TauJet_v3::neutralPFO
const PFO * neutralPFO(size_t i) const
Get the pointer to a given neutral PFO associated with this tau.
xAOD::TauJet_v3::setDiscriminant
void setDiscriminant(TauJetParameters::TauID discID, double disc)
Set value of discriminant.
Definition: TauJet_v3.cxx:237
xAOD::TauJet_v3::nChargedPFOs
size_t nChargedPFOs() const
Get the number of charged PFO particles associated with this tau.
Definition: TauJet_v3.cxx:778
xAOD::TauJet_v3::detail
xAODTAU_return_type< T >::type detail(TauJetParameters::Detail detail) const
Definition: TauJet_v3.h:174
xAOD::TauJet_v3::tracks
std::vector< const TauTrack * > tracks(TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
Get the v<const pointer> to a given tauTrack collection associated with this tau.
Definition: TauJet_v3.cxx:461
xAOD::TauJet_v3::allTracks
std::vector< const TauTrack * > allTracks() const
Get the v<const pointer> to all tracks associated with this tau, regardless of classification.
Definition: TauJet_v3.cxx:482
TrackParticleContainer.h
xAOD::TauJet_v3::vertexLink
const VertexLink_t & vertexLink() const
xAOD::TauJet_v3::chargedPFO
const PFO * chargedPFO(size_t i) const
Get the pointer to a given charged PFO associated with this tau.
xAOD::TauJet_v3::nShotPFOs
size_t nShotPFOs() const
Get the number of shot PFO particles associated with this tau.
Definition: TauJet_v3.cxx:748
xAOD::TauJet_v3::phiPanTauCellBasedProto
double phiPanTauCellBasedProto() const
xAOD::TauJet_v3::trackFilterProngs
int trackFilterProngs() const
xAOD::TauJet_v3::ptPanTauCellBasedProto
double ptPanTauCellBasedProto() const