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 
22 
23 
25 
26  public:
27 
29 
30  PileupSummaryInfo( const int num_PU_vertices,
31  const std::vector<float>& zpositions,
32  const std::vector<float>& times, // may be empty
33  const std::vector<float>& sumpT_lowpT,
34  const std::vector<float>& sumpT_highpT,
35  const std::vector<int>& ntrks_lowpT,
36  const std::vector<int>& ntrks_highpT );
37 
38  PileupSummaryInfo( const int num_PU_vertices,
39  const std::vector<float>& zpositions,
40  const std::vector<float>& times, // may be empty
41  const std::vector<float>& sumpT_lowpT,
42  const std::vector<float>& sumpT_highpT,
43  const std::vector<int>& ntrks_lowpT,
44  const std::vector<int>& ntrks_highpT,
45  int bunchCrossing);
46 
47  PileupSummaryInfo( const int num_PU_vertices,
48  const std::vector<float>& zpositions,
49  const std::vector<float>& times, // may be empty
50  const std::vector<float>& sumpT_lowpT,
51  const std::vector<float>& sumpT_highpT,
52  const std::vector<int>& ntrks_lowpT,
53  const std::vector<int>& ntrks_highpT,
54  const std::vector<edm::EventID>& eventInfo,
55  const std::vector<float>& pT_hats,
56  int bunchCrossing,
57  float TrueNumInteractions,
58  int bunchSpacing);
59 
60  PileupSummaryInfo( const int num_PU_vertices,
61  const std::vector<float>& instLumi,
62  const std::vector<edm::EventID>& eventInfo );
63 
64 
66 
67  const int getPU_NumInteractions() const { return num_PU_vertices_; }
68  const std::vector<float>& getPU_zpositions() const { return zpositions_; }
69  bool has_times() const { return !times_.empty(); }
70  const std::vector<float>& getPU_times() const { return times_; }
71  const std::vector<float>& getPU_sumpT_lowpT() const { return sumpT_lowpT_; }
72  const std::vector<float>& getPU_sumpT_highpT() const { return sumpT_highpT_; }
73  const std::vector<int>& getPU_ntrks_lowpT() const { return ntrks_lowpT_; }
74  const std::vector<int>& getPU_ntrks_highpT() const { return ntrks_highpT_; }
75  const std::vector<float>& getPU_instLumi() const { return instLumi_; }
76  const std::vector<edm::EventID>& getPU_EventID() const { return eventInfo_; }
77  const std::vector<float>& getPU_pT_hats() const { return pT_hats_; }
78  const int getBunchCrossing() const { return bunchCrossing_;}
79  const int getBunchSpacing() const { return bunchSpacing_;}
80  const float getTrueNumInteractions() const { return TrueNumInteractions_;}
81 
82  private:
83 
84  // for "standard" pileup: we have MC Truth information for these
85 
87  std::vector<float> zpositions_;
88  std::vector<float> times_;
89  std::vector<float> sumpT_lowpT_;
90  std::vector<float> sumpT_highpT_;
91  std::vector<int> ntrks_lowpT_;
92  std::vector<int> ntrks_highpT_;
93  std::vector<edm::EventID> eventInfo_;
94  std::vector<float> pT_hats_;
98 
99 
100  // for DataMixer pileup, we only have raw information:
101 
102  std::vector<float> instLumi_;
103 
104 
105 };
106 
107 #endif
std::vector< int > ntrks_lowpT_
std::vector< edm::EventID > eventInfo_
std::vector< float > pT_hats_
std::vector< float > sumpT_highpT_
const int getBunchCrossing() const
const std::vector< edm::EventID > & getPU_EventID() const
std::vector< float > sumpT_lowpT_
const std::vector< float > & getPU_instLumi() const
const std::vector< float > & getPU_zpositions() const
std::vector< float > zpositions_
const float getTrueNumInteractions() const
const std::vector< float > & getPU_sumpT_highpT() const
const int getBunchSpacing() const
const std::vector< float > & getPU_pT_hats() const
std::vector< int > ntrks_highpT_
std::vector< float > instLumi_
const int getPU_NumInteractions() const
const std::vector< int > & getPU_ntrks_lowpT() const
bool has_times() const
eventInfo
add run, event number and lumi section
std::vector< float > times_
const std::vector< float > & getPU_times() const
const std::vector< float > & getPU_sumpT_lowpT() const
const std::vector< int > & getPU_ntrks_highpT() const