CMS 3D CMS Logo

PileupSummaryInfo.h
Go to the documentation of this file.
1 #ifndef PileupSummaryInfo_h
2 #define PileupSummaryInfo_h
3 // -*- C++ -*-
4 //
5 // Package: PileupSummaryInfo
6 // Class : PileupSummaryInfo
7 //
13 //
14 // Original Author: Mike Hildreth, Notre Dame
15 // Created: July 1, 2010
16 //
17 
19 #include <vector>
20 #include <string>
21 
23 public:
25 
26  PileupSummaryInfo(const int num_PU_vertices,
27  const std::vector<float>& zpositions,
28  const std::vector<float>& times, // may be empty
29  const std::vector<float>& sumpT_lowpT,
30  const std::vector<float>& sumpT_highpT,
31  const std::vector<int>& ntrks_lowpT,
32  const std::vector<int>& ntrks_highpT);
33 
34  PileupSummaryInfo(const int num_PU_vertices,
35  const std::vector<float>& zpositions,
36  const std::vector<float>& times, // may be empty
37  const std::vector<float>& sumpT_lowpT,
38  const std::vector<float>& sumpT_highpT,
39  const std::vector<int>& ntrks_lowpT,
40  const std::vector<int>& ntrks_highpT,
41  int bunchCrossing);
42 
43  PileupSummaryInfo(const int num_PU_vertices,
44  const std::vector<float>& zpositions,
45  const std::vector<float>& times, // may be empty
46  const std::vector<float>& sumpT_lowpT,
47  const std::vector<float>& sumpT_highpT,
48  const std::vector<int>& ntrks_lowpT,
49  const std::vector<int>& ntrks_highpT,
50  const std::vector<edm::EventID>& eventInfo,
51  const std::vector<float>& pT_hats,
52  int bunchCrossing,
53  float TrueNumInteractions,
54  int bunchSpacing);
55 
56  PileupSummaryInfo(const int num_PU_vertices,
57  const std::vector<float>& instLumi,
58  const std::vector<edm::EventID>& eventInfo);
59 
61 
62  const int getPU_NumInteractions() const { return num_PU_vertices_; }
63  const std::vector<float>& getPU_zpositions() const { return zpositions_; }
64  bool has_times() const { return !times_.empty(); }
65  const std::vector<float>& getPU_times() const { return times_; }
66  const std::vector<float>& getPU_sumpT_lowpT() const { return sumpT_lowpT_; }
67  const std::vector<float>& getPU_sumpT_highpT() const { return sumpT_highpT_; }
68  const std::vector<int>& getPU_ntrks_lowpT() const { return ntrks_lowpT_; }
69  const std::vector<int>& getPU_ntrks_highpT() const { return ntrks_highpT_; }
70  const std::vector<float>& getPU_instLumi() const { return instLumi_; }
71  const std::vector<edm::EventID>& getPU_EventID() const { return eventInfo_; }
72  const std::vector<float>& getPU_pT_hats() const { return pT_hats_; }
73  const int getBunchCrossing() const { return bunchCrossing_; }
74  const int getBunchSpacing() const { return bunchSpacing_; }
75  const float getTrueNumInteractions() const { return TrueNumInteractions_; }
76 
77 private:
78  // for "standard" pileup: we have MC Truth information for these
79 
81  std::vector<float> zpositions_;
82  std::vector<float> times_;
83  std::vector<float> sumpT_lowpT_;
84  std::vector<float> sumpT_highpT_;
85  std::vector<int> ntrks_lowpT_;
86  std::vector<int> ntrks_highpT_;
87  std::vector<edm::EventID> eventInfo_;
88  std::vector<float> pT_hats_;
92 
93  // for DataMixer pileup, we only have raw information:
94 
95  std::vector<float> instLumi_;
96 };
97 
98 #endif
const std::vector< float > & getPU_instLumi() const
std::vector< int > ntrks_lowpT_
const std::vector< float > & getPU_pT_hats() const
std::vector< edm::EventID > eventInfo_
std::vector< float > pT_hats_
std::vector< float > sumpT_highpT_
const int getBunchSpacing() const
const std::vector< float > & getPU_zpositions() const
const std::vector< float > & getPU_sumpT_lowpT() const
std::vector< float > sumpT_lowpT_
std::vector< float > zpositions_
const std::vector< float > & getPU_times() const
bool has_times() const
const std::vector< int > & getPU_ntrks_lowpT() const
const std::vector< int > & getPU_ntrks_highpT() const
std::vector< int > ntrks_highpT_
std::vector< float > instLumi_
const int getBunchCrossing() const
const std::vector< float > & getPU_sumpT_highpT() const
const float getTrueNumInteractions() const
eventInfo
add run, event number and lumi section
const int getPU_NumInteractions() const
std::vector< float > times_
const std::vector< edm::EventID > & getPU_EventID() const