CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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  std::vector<float>& zpositions,
32  std::vector<float>& sumpT_lowpT,
33  std::vector<float>& sumpT_highpT,
34  std::vector<int>& ntrks_lowpT,
35  std::vector<int>& ntrks_highpT );
36 
37  PileupSummaryInfo( const int num_PU_vertices,
38  std::vector<float>& zpositions,
39  std::vector<float>& sumpT_lowpT,
40  std::vector<float>& sumpT_highpT,
41  std::vector<int>& ntrks_lowpT,
42  std::vector<int>& ntrks_highpT,
43  int bunchCrossing);
44 
45 
46  PileupSummaryInfo( const int num_PU_vertices,
47  std::vector<float>& zpositions,
48  std::vector<float>& sumpT_lowpT,
49  std::vector<float>& sumpT_highpT,
50  std::vector<int>& ntrks_lowpT,
51  std::vector<int>& ntrks_highpT,
52  int bunchCrossing,
53  float TrueNumInteractions);
54 
55  PileupSummaryInfo( const int num_PU_vertices,
56  std::vector<float>& instLumi,
57  std::vector<edm::EventID>& eventInfo );
58 
59 
61 
62  const int getPU_NumInteractions() const { return num_PU_vertices_; }
63  const std::vector<float>& getPU_zpositions() const { return zpositions_; }
64  const std::vector<float>& getPU_sumpT_lowpT() const { return sumpT_lowpT_; }
65  const std::vector<float>& getPU_sumpT_highpT() const { return sumpT_highpT_; }
66  const std::vector<int>& getPU_ntrks_lowpT() const { return ntrks_lowpT_; }
67  const std::vector<int>& getPU_ntrks_highpT() const { return ntrks_highpT_; }
68  const std::vector<float>& getPU_instLumi() const { return instLumi_; }
69  const std::vector<edm::EventID>& getPU_EventID() const { return eventInfo_; }
70  const int getBunchCrossing() const { return bunchCrossing_;}
71  const float getTrueNumInteractions() const { return TrueNumInteractions_;}
72 
73  private:
74 
75  // for "standard" pileup: we have MC Truth information for these
76 
78  std::vector<float> zpositions_;
79  std::vector<float> sumpT_lowpT_;
80  std::vector<float> sumpT_highpT_;
81  std::vector<int> ntrks_lowpT_;
82  std::vector<int> ntrks_highpT_;
85 
86 
87  // for DataMixer pileup, we only have raw information:
88 
89  std::vector<float> instLumi_;
90  std::vector<edm::EventID> eventInfo_;
91 
92 };
93 
94 #endif
std::vector< int > ntrks_lowpT_
std::vector< edm::EventID > eventInfo_
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
std::vector< int > ntrks_highpT_
std::vector< float > instLumi_
const int getPU_NumInteractions() const
const std::vector< int > & getPU_ntrks_lowpT() const
const std::vector< float > & getPU_sumpT_lowpT() const
const std::vector< int > & getPU_ntrks_highpT() const