ATLAS Offline Software
TrigTau.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef _TRIGTAU_H_
6 #define _TRIGTAU_H_
7 
24 #include <vector>
25 #include <iostream>
26 #include <string>
27 
28 #include "FourMom/P4PtEtaPhiM.h"
29 #include "Navigation/Navigable.h"
31 
35 
36 class TrigTau: public P4PtEtaPhiM, public NavigableTerminalNode ,
37  virtual public INavigable4Momentum {
38 
39  public:
40 
41  TrigTau();
42 
43  TrigTau(int roi,
44  float eta, float phi, float zvtx, float pt,
45  float err_zvtx,
46  float etCalib, float etFlow, int ntracks,
47  const TrigTauCluster* cluster, const TrigInDetTrackCollection* tracks,
49 
50 
51  TrigTau(int roi,
52  float eta =0, float phi=0, float zvtx=0, float pt=0, float etCalib=0,
53  float etFlow = 0, int ntracks=0,
54  const TrigTauCluster* cluster=NULL, const TrigInDetTrackCollection* tracks=NULL,
55  const TrigTauTracksInfo* tracksInfo=NULL);
56 
57  ~TrigTau();
58 
60  int roiId() const;
61  float Zvtx() const;
62  float err_Zvtx() const;
63  float etCalibCluster() const;
64  float simpleEtFlow() const;
65  int nMatchedTracks() const;
66  float trkAvgDist() const;
67  float etOverPtLeadTrk() const;
68  const TrigTauCluster* tauCluster() const;
70  const TrigTauTracksInfo* tracksInfo() const;
71 
73  void setRoiId(int roiId);
74  void setZvtx(float zvtx);
75  void setErr_Zvtx(float err_zvtx);
77  void setSimpleEtFlow(float etFlow);
78  void setNMatchedTracks(int nmatchedTracks);
80  void setTrackCollection(const TrigInDetTrackCollection* trackColl);
82  void setTrkAvgDist( float trkAvgDist);
84 
85 
86  private:
87 
88  // private data members
90  int m_roiID;
92  float m_Zvtx;
94  float m_err_Zvtx;
95 
108 
109 
114 
115 };
116 
118 std::string str( const TrigTau& tau );
119 
121 MsgStream& operator<< ( MsgStream& m, const TrigTau& tau );
122 
124 bool operator== ( const TrigTau& left, const TrigTau& right );
126 inline bool operator!= ( const TrigTau& left, const TrigTau& right ) {
127  return !( left == right );
128 }
129 
131 void diff( const TrigTau& left, const TrigTau& right,
132  std::map< std::string, double >& varChange );
133 
134 CLASS_DEF( TrigTau , 45894787 , 3 )
135 
136 #include "TrigParticle/TrigTauContainer.h"
137 
138 #endif // TRIG_TAU
TrigTau::tracksInfo
const TrigTauTracksInfo * tracksInfo() const
Definition: TrigTau.cxx:88
TrigTau::setTauCluster
void setTauCluster(const TrigTauCluster *tauCluster)
Definition: TrigTau.cxx:97
TrigTau::setSimpleEtFlow
void setSimpleEtFlow(float etFlow)
Definition: TrigTau.cxx:95
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
TrigTau::m_etOverPtLeadTrk
float m_etOverPtLeadTrk
ration of cluster energy to leading pt track
Definition: TrigTau.h:113
INavigable4Momentum.h
TrigTau::trackCollection
const TrigInDetTrackCollection * trackCollection() const
Definition: TrigTau.cxx:87
TrigInDetTrackCollection
Definition: TrigInDetTrackCollection.h:13
TrigTau::~TrigTau
~TrigTau()
Definition: TrigTau.cxx:68
TrigTau::trkAvgDist
float trkAvgDist() const
Definition: TrigTau.cxx:82
TrigTau::setRoiId
void setRoiId(int roiId)
set methods
Definition: TrigTau.cxx:91
operator!=
bool operator!=(const TrigTau &left, const TrigTau &right)
Operator comparing two TrigTau objects for inequality.
Definition: TrigTau.h:126
str
std::string str(const TrigTau &tau)
Helper function for printing the object.
Definition: TrigTau.cxx:106
operator<<
MsgStream & operator<<(MsgStream &m, const TrigTau &tau)
Helper operator for printing the object.
Definition: TrigTau.cxx:124
NavigableTerminalNode
Dummy type needed fro specialized implementation.
Definition: NavigableTerminalNode.h:19
operator==
bool operator==(const TrigTau &left, const TrigTau &right)
Operator comparing two TrigTau objects for equality.
Definition: TrigTau.cxx:130
TrigInDetTrackCollection.h
TrigTauCluster
Class with calibrated variables for tau clustering.
Definition: TrigTauCluster.h:33
TrigTau::setEtCalibCluster
void setEtCalibCluster(float etCalibCluster)
Definition: TrigTau.cxx:94
TrigTau::TrigTau
TrigTau()
File: TrigTau.cxx.
Definition: TrigTau.cxx:27
TrigTau::tauCluster
const TrigTauCluster * tauCluster() const
Definition: TrigTau.cxx:85
TrigTau::err_Zvtx
float err_Zvtx() const
Definition: TrigTau.cxx:75
TrigTau::m_err_Zvtx
float m_err_Zvtx
Error on z coordinate.
Definition: TrigTau.h:94
TrigTauCluster.h
TrigTauTracksInfo
Definition: TrigTauTracksInfo.h:28
P4PtEtaPhiM::phi
virtual double phi() const
get phi data member
Definition: P4PtEtaPhiM.h:109
TrigTau::m_etCalibCluster
float m_etCalibCluster
Transverse energy of the calibrated tau cluster.
Definition: TrigTau.h:97
TrigTau::nMatchedTracks
int nMatchedTracks() const
Definition: TrigTau.cxx:81
TrigTau::setTrackCollection
void setTrackCollection(const TrigInDetTrackCollection *trackColl)
Definition: TrigTau.cxx:98
TrigTau::setEtOverPtLeadTrk
void setEtOverPtLeadTrk(float etOverPtLeadTrk)
Definition: TrigTau.cxx:103
TrigTau::m_roiID
int m_roiID
Identifier of the RoI.
Definition: TrigTau.h:90
P4PtEtaPhiM::pt
virtual double pt() const
get pt data member
Definition: P4PtEtaPhiM.h:103
TrigTau::m_simpleEtFlow
float m_simpleEtFlow
EtFlow as calculated from 3 fastest tracks and cluster with energy of first 3 EM samplings.
Definition: TrigTau.h:99
trackInfo
Definition: TrigInDetUtils.h:13
TrigTau::roiId
int roiId() const
accessor methods
Definition: TrigTau.cxx:71
TrigTauTracksInfo.h
TrigTau::simpleEtFlow
float simpleEtFlow() const
Definition: TrigTau.cxx:79
TrigTau::setErr_Zvtx
void setErr_Zvtx(float err_zvtx)
Definition: TrigTau.cxx:93
TrigTau::m_nMatchedTracks
int m_nMatchedTracks
Number of tracks matched to the calorimeter cluster.
Definition: TrigTau.h:101
TrigTau::m_tracks
const TrigInDetTrackCollection * m_tracks
Collection of inner detector tracks.
Definition: TrigTau.h:107
TrigTau::setTrkAvgDist
void setTrkAvgDist(float trkAvgDist)
Definition: TrigTau.cxx:102
P4PtEtaPhiM::eta
virtual double eta() const
get eta data member
Definition: P4PtEtaPhiM.h:106
TrigTau::setNMatchedTracks
void setNMatchedTracks(int nmatchedTracks)
Definition: TrigTau.cxx:96
TrigTau::Zvtx
float Zvtx() const
Definition: TrigTau.cxx:73
TrigTau::setZvtx
void setZvtx(float zvtx)
Definition: TrigTau.cxx:92
TrigTau::m_tracksInfo
const TrigTauTracksInfo * m_tracksInfo
Collection of inner detector tracks.
Definition: TrigTau.h:105
TrigTau::m_trkAvgDist
float m_trkAvgDist
average distance of tracks to tau direction
Definition: TrigTau.h:111
Navigable.h
P4PtEtaPhiM.h
diff
void diff(const TrigTau &left, const TrigTau &right, std::map< std::string, double > &varChange)
Comparison with feedback.
Definition: TrigTau.cxx:154
TrigTau::m_Zvtx
float m_Zvtx
Z coordinate of the tau vertex.
Definition: TrigTau.h:92
INavigable4Momentum
Definition: INavigable4Momentum.h:21
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
TrigTau::etOverPtLeadTrk
float etOverPtLeadTrk() const
Definition: TrigTau.cxx:83
TrigTau
File: TrigTau.h.
Definition: TrigTau.h:37
TrigTau::setTracksInfo
void setTracksInfo(const TrigTauTracksInfo *trackInfo)
Definition: TrigTau.cxx:100
P4PtEtaPhiM
Definition: P4PtEtaPhiM.h:25
TrigTau::etCalibCluster
float etCalibCluster() const
Definition: TrigTau.cxx:77
TrigTau::m_cluster
const TrigTauCluster * m_cluster
Calorimeter tau cluster.
Definition: TrigTau.h:103