CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Run3ScoutingPhoton.h
Go to the documentation of this file.
1 #ifndef DataFormats_Run3ScoutingPhoton_h
2 #define DataFormats_Run3ScoutingPhoton_h
3 
4 #include <vector>
5 #include <cstdint>
6 
7 // Class for holding photon 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  float sigmaIetaIeta,
17  float hOverE,
18  float ecalIso,
19  float hcalIso,
20  float trkIso,
21  float r9,
22  float sMin,
23  float sMaj,
24  uint32_t seedId,
25  std::vector<float> energyMatrix,
26  std::vector<uint32_t> detIds,
27  std::vector<float> timingMatrix)
28  : pt_(pt),
29  eta_(eta),
30  phi_(phi),
31  m_(m),
32  sigmaIetaIeta_(sigmaIetaIeta),
33  hOverE_(hOverE),
34  ecalIso_(ecalIso),
35  hcalIso_(hcalIso),
36  trkIso_(trkIso),
37  r9_(r9),
38  sMin_(sMin),
39  sMaj_(sMaj),
40  seedId_(seedId),
41  energyMatrix_(std::move(energyMatrix)),
42  detIds_(std::move(detIds)),
43  timingMatrix_(std::move(timingMatrix)) {}
44  //default constructor
46  : pt_(0),
47  eta_(0),
48  phi_(0),
49  m_(0),
50  sigmaIetaIeta_(0),
51  hOverE_(0),
52  ecalIso_(0),
53  hcalIso_(0),
54  trkIso_(0),
55  r9_(0),
56  sMin_(0),
57  sMaj_(0),
58  seedId_(0),
59  energyMatrix_(0),
60  timingMatrix_(0) {}
61 
62  //accessor functions
63  float pt() const { return pt_; }
64  float eta() const { return eta_; }
65  float phi() const { return phi_; }
66  float m() const { return m_; }
67  float sigmaIetaIeta() const { return sigmaIetaIeta_; }
68  float hOverE() const { return hOverE_; }
69  float ecalIso() const { return ecalIso_; }
70  float hcalIso() const { return hcalIso_; }
71  float trkIso() const { return trkIso_; }
72  float r9() const { return r9_; }
73  float sMin() const { return sMin_; }
74  float sMaj() const { return sMaj_; }
75  uint32_t seedId() const { return seedId_; }
76  std::vector<float> const& energyMatrix() const { return energyMatrix_; }
77  std::vector<uint32_t> const& detIds() const { return detIds_; }
78  std::vector<float> const& timingMatrix() const { return timingMatrix_; }
79 
80 private:
81  float pt_;
82  float eta_;
83  float phi_;
84  float m_;
86  float hOverE_;
87  float ecalIso_;
88  float hcalIso_;
89  float trkIso_;
90  float r9_;
91  float sMin_;
92  float sMaj_;
93  uint32_t seedId_;
94  std::vector<float> energyMatrix_;
95  std::vector<uint32_t> detIds_;
96  std::vector<float> timingMatrix_;
97 };
98 
99 typedef std::vector<Run3ScoutingPhoton> Run3ScoutingPhotonCollection;
100 
101 #endif
float trkIso() const
float sigmaIetaIeta() const
float hOverE() const
std::vector< float > const & energyMatrix() const
std::vector< float > energyMatrix_
def move
Definition: eostools.py:511
std::vector< float > const & timingMatrix() const
std::vector< float > timingMatrix_
std::vector< Run3ScoutingPhoton > Run3ScoutingPhotonCollection
std::vector< uint32_t > const & detIds() const
std::vector< uint32_t > detIds_
uint32_t seedId() const
Run3ScoutingPhoton(float pt, float eta, float phi, float m, float sigmaIetaIeta, float hOverE, float ecalIso, float hcalIso, float trkIso, float r9, float sMin, float sMaj, uint32_t seedId, std::vector< float > energyMatrix, std::vector< uint32_t > detIds, std::vector< float > timingMatrix)
float ecalIso() const
float hcalIso() const