CMS 3D CMS Logo

PreMixingPileupCopy.h
Go to the documentation of this file.
1 #ifndef SimGeneral_PreMixingModule_PreMixingPileupCopy_h
2 #define SimGeneral_PreMixingModule_PreMixingPileupCopy_h
3 
16 
19 
22 
23 #include <vector>
24 #include <string>
25 
26 namespace reco {
27  class GenParticle;
28 }
30 
31 namespace edm {
32  class ModuleCallingContext;
33 
35  public:
37  ~PreMixingPileupCopy() = default;
38 
39  float getTrueNumInteractions(PileUpEventPrincipal const& pep) const;
40 
41  void addPileupInfo(PileUpEventPrincipal const& pep);
42  const std::vector<PileupSummaryInfo>& getPileupSummaryInfo() const { return pileupSummaryStorage_; }
43  int getBunchSpacing() const { return bsStorage_; }
44  void putPileupInfo(edm::Event& e);
45 
46  private:
47  edm::InputTag pileupInfoInputTag_; // InputTag for PileupSummaryInfo
48  edm::InputTag bunchSpacingInputTag_; // InputTag for bunch spacing int
49  edm::InputTag cfPlaybackInputTag_; // InputTag for CrossingFrame Playback information
50 
51  std::vector<edm::InputTag> genPUProtonsInputTags_;
52 
53  // deliver data from addPileupInfo() to getPileupInfo() and putPileupInfo()
55  std::vector<PileupSummaryInfo> pileupSummaryStorage_;
57 
58  std::vector<std::string> genPUProtons_labels_;
59  std::vector<std::vector<reco::GenParticle> > genPUProtons_;
60 
62  };
63 } // namespace edm
64 
65 #endif
std::vector< std::vector< reco::GenParticle > > genPUProtons_
void putPileupInfo(edm::Event &e)
CrossingFramePlaybackInfoNew crossingFramePlaybackStorage_
std::vector< std::string > genPUProtons_labels_
void addPileupInfo(PileUpEventPrincipal const &pep)
std::vector< PileupSummaryInfo > pileupSummaryStorage_
const std::vector< PileupSummaryInfo > & getPileupSummaryInfo() const
std::vector< edm::InputTag > genPUProtonsInputTags_
float getTrueNumInteractions(PileUpEventPrincipal const &pep) const
fixed size matrix
HLT enums.
PreMixingPileupCopy(const edm::ParameterSet &ps, edm::ProducesCollector, edm::ConsumesCollector &&iC)