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 // $Id: PileupSummaryInfo.h,v 1.4 2011/07/05 00:40:39 mikeh Exp $
17 //
18 
20 #include <vector>
21 #include <string>
22 
23 
24 
26 
27  public:
28 
30 
31  PileupSummaryInfo( const int num_PU_vertices,
32  std::vector<float>& zpositions,
33  std::vector<float>& sumpT_lowpT,
34  std::vector<float>& sumpT_highpT,
35  std::vector<int>& ntrks_lowpT,
36  std::vector<int>& ntrks_highpT );
37 
38  PileupSummaryInfo( const int num_PU_vertices,
39  std::vector<float>& zpositions,
40  std::vector<float>& sumpT_lowpT,
41  std::vector<float>& sumpT_highpT,
42  std::vector<int>& ntrks_lowpT,
43  std::vector<int>& ntrks_highpT,
44  int bunchCrossing);
45 
46 
47  PileupSummaryInfo( const int num_PU_vertices,
48  std::vector<float>& zpositions,
49  std::vector<float>& sumpT_lowpT,
50  std::vector<float>& sumpT_highpT,
51  std::vector<int>& ntrks_lowpT,
52  std::vector<int>& ntrks_highpT,
53  int bunchCrossing,
54  float TrueNumInteractions);
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 float getTrueNumInteractions() const { return TrueNumInteractions_;}
73 
74  private:
75 
76  // for "standard" pileup: we have MC Truth information for these
77 
79  std::vector<float> zpositions_;
80  std::vector<float> sumpT_lowpT_;
81  std::vector<float> sumpT_highpT_;
82  std::vector<int> ntrks_lowpT_;
83  std::vector<int> ntrks_highpT_;
86 
87 
88  // for DataMixer pileup, we only have raw information:
89 
90  std::vector<float> instLumi_;
91  std::vector<edm::EventID> eventInfo_;
92 
93 };
94 
95 #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