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  int bunchSpacing);
55 
56  PileupSummaryInfo( const int num_PU_vertices,
57  std::vector<float>& instLumi,
58  std::vector<edm::EventID>& eventInfo );
59 
60 
62 
63  const int getPU_NumInteractions() const { return num_PU_vertices_; }
64  const std::vector<float>& getPU_zpositions() const { return zpositions_; }
65  const std::vector<float>& getPU_sumpT_lowpT() const { return sumpT_lowpT_; }
66  const std::vector<float>& getPU_sumpT_highpT() const { return sumpT_highpT_; }
67  const std::vector<int>& getPU_ntrks_lowpT() const { return ntrks_lowpT_; }
68  const std::vector<int>& getPU_ntrks_highpT() const { return ntrks_highpT_; }
69  const std::vector<float>& getPU_instLumi() const { return instLumi_; }
70  const std::vector<edm::EventID>& getPU_EventID() const { return eventInfo_; }
71  const int getBunchCrossing() const { return bunchCrossing_;}
72  const int getBunchSpacing() const { return bunchSpacing_;}
73  const float getTrueNumInteractions() const { return TrueNumInteractions_;}
74 
75  private:
76 
77  // for "standard" pileup: we have MC Truth information for these
78 
80  std::vector<float> zpositions_;
81  std::vector<float> sumpT_lowpT_;
82  std::vector<float> sumpT_highpT_;
83  std::vector<int> ntrks_lowpT_;
84  std::vector<int> ntrks_highpT_;
88 
89 
90  // for DataMixer pileup, we only have raw information:
91 
92  std::vector<float> instLumi_;
93  std::vector<edm::EventID> eventInfo_;
94 
95 };
96 
97 #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
const int getBunchSpacing() 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