CMS 3D CMS Logo

Run3ScoutingElectron.h
Go to the documentation of this file.
1 #ifndef DataFormats_Run3ScoutingElectron_h
2 #define DataFormats_Run3ScoutingElectron_h
3 
4 #include <vector>
5 #include <cstdint>
6 
7 // Class for holding electron information, for use in data scouting
8 // IMPORTANT: the content of this class should be changed only in backwards compatible ways!
10 public:
11  //constructor with values for all data fields
13  float eta,
14  float phi,
15  float m,
16  std::vector<float> trkd0,
17  std::vector<float> trkdz,
18  std::vector<float> trkpt,
19  std::vector<float> trketa,
20  std::vector<float> trkphi,
21  std::vector<float> trkchi2overndf,
22  float dEtaIn,
23  float dPhiIn,
24  float sigmaIetaIeta,
25  float hOverE,
26  float ooEMOop,
27  int missingHits,
28  std::vector<int> trkcharge,
29  float ecalIso,
30  float hcalIso,
31  float trackIso,
32  float r9,
33  float sMin,
34  float sMaj,
35  uint32_t seedId,
36  std::vector<float> energyMatrix,
37  std::vector<uint32_t> detIds,
38  std::vector<float> timingMatrix,
40  : pt_(pt),
41  eta_(eta),
42  phi_(phi),
43  m_(m),
44  trkd0_(std::move(trkd0)),
45  trkdz_(std::move(trkdz)),
46  trkpt_(std::move(trkpt)),
50  dEtaIn_(dEtaIn),
51  dPhiIn_(dPhiIn),
53  hOverE_(hOverE),
60  r9_(r9),
61  sMin_(sMin),
62  sMaj_(sMaj),
63  seedId_(seedId),
68  //default constructor
70  : pt_(0),
71  eta_(0),
72  phi_(0),
73  m_(0),
74  trkd0_(0),
75  trkdz_(0),
76  trkpt_(0),
77  trketa_(0),
78  trkphi_(0),
79  trkchi2overndf_(0),
80  dEtaIn_(0),
81  dPhiIn_(0),
82  sigmaIetaIeta_(0),
83  hOverE_(0),
84  ooEMOop_(0),
85  missingHits_(0),
86  trkcharge_(0),
87  ecalIso_(0),
88  hcalIso_(0),
89  trackIso_(0),
90  r9_(0),
91  sMin_(0),
92  sMaj_(0),
93  seedId_(0),
95 
96  //accessor functions
97  float pt() const { return pt_; }
98  float eta() const { return eta_; }
99  float phi() const { return phi_; }
100  float m() const { return m_; }
101  std::vector<float> const& trkd0() const { return trkd0_; }
102  std::vector<float> const& trkdz() const { return trkdz_; }
103  std::vector<float> const& trkpt() const { return trkpt_; }
104  std::vector<float> const& trketa() const { return trketa_; }
105  std::vector<float> const& trkphi() const { return trkphi_; }
106  std::vector<float> const& trkchi2overndf() const { return trkchi2overndf_; }
107  float dEtaIn() const { return dEtaIn_; }
108  float dPhiIn() const { return dPhiIn_; }
109  float sigmaIetaIeta() const { return sigmaIetaIeta_; }
110  float hOverE() const { return hOverE_; }
111  float ooEMOop() const { return ooEMOop_; }
112  int missingHits() const { return missingHits_; }
113  std::vector<int> const& trkcharge() const { return trkcharge_; }
114  float ecalIso() const { return ecalIso_; }
115  float hcalIso() const { return hcalIso_; }
116  float trackIso() const { return trackIso_; }
117  float r9() const { return r9_; }
118  float sMin() const { return sMin_; }
119  float sMaj() const { return sMaj_; }
120  uint32_t seedId() const { return seedId_; }
121  std::vector<float> const& energyMatrix() const { return energyMatrix_; }
122  std::vector<uint32_t> const& detIds() const { return detIds_; }
123  std::vector<float> const& timingMatrix() const { return timingMatrix_; }
125 
126 private:
127  float pt_;
128  float eta_;
129  float phi_;
130  float m_;
131  std::vector<float> trkd0_;
132  std::vector<float> trkdz_;
133  std::vector<float> trkpt_;
134  std::vector<float> trketa_;
135  std::vector<float> trkphi_;
136  std::vector<float> trkchi2overndf_;
137  float dEtaIn_;
138  float dPhiIn_;
140  float hOverE_;
141  float ooEMOop_;
143  std::vector<int> trkcharge_;
144  float ecalIso_;
145  float hcalIso_;
146  float trackIso_;
147  float r9_;
148  float sMin_;
149  float sMaj_;
150  uint32_t seedId_;
151  std::vector<float> energyMatrix_;
152  std::vector<uint32_t> detIds_;
153  std::vector<float> timingMatrix_;
155 };
156 
157 typedef std::vector<Run3ScoutingElectron> Run3ScoutingElectronCollection;
158 
159 #endif
bool rechitZeroSuppression() const
std::vector< float > const & trkphi() const
std::vector< float > timingMatrix_
std::vector< float > trkpt_
std::vector< float > const & trkpt() const
std::vector< float > const & energyMatrix() const
std::vector< float > trkchi2overndf_
std::vector< float > trkphi_
std::vector< float > const & trkd0() const
std::vector< float > energyMatrix_
std::vector< float > trkdz_
Run3ScoutingElectron(float pt, float eta, float phi, float m, std::vector< float > trkd0, std::vector< float > trkdz, std::vector< float > trkpt, std::vector< float > trketa, std::vector< float > trkphi, std::vector< float > trkchi2overndf, float dEtaIn, float dPhiIn, float sigmaIetaIeta, float hOverE, float ooEMOop, int missingHits, std::vector< int > trkcharge, float ecalIso, float hcalIso, float trackIso, float r9, float sMin, float sMaj, uint32_t seedId, std::vector< float > energyMatrix, std::vector< uint32_t > detIds, std::vector< float > timingMatrix, bool rechitZeroSuppression)
std::vector< float > trkd0_
std::vector< float > const & trkchi2overndf() const
std::vector< int > const & trkcharge() const
std::vector< Run3ScoutingElectron > Run3ScoutingElectronCollection
std::vector< float > const & timingMatrix() const
std::vector< int > trkcharge_
std::vector< float > const & trketa() const
std::vector< float > trketa_
std::vector< uint32_t > detIds_
std::vector< uint32_t > const & detIds() const
std::vector< float > const & trkdz() const
def move(src, dest)
Definition: eostools.py:511