CMS 3D CMS Logo

DataMixingEMDigiWorker.h
Go to the documentation of this file.
1 #ifndef SimDataMixingEMDigiWorker_h
2 #define SimDataMixingEMDigiWorker_h
3 
21 
27 
32 
33 #include <map>
34 #include <string>
35 #include <vector>
36 
37 namespace edm {
38  class ModuleCallingContext;
39 
41  public:
43 
46 
48  virtual ~DataMixingEMDigiWorker();
49 
50  void putEM(edm::Event &e, const edm::EventSetup &ES);
51  void addEMSignals(const edm::Event &e, const edm::EventSetup &ES);
52  void addEMPileups(const int bcr,
53  const edm::EventPrincipal *,
54  unsigned int EventId,
55  const edm::EventSetup &ES,
56  ModuleCallingContext const *);
57 
58  private:
60  const std::vector<float> GetPedestals(const edm::EventSetup &ES, const DetId &detid);
61 
63  const std::vector<float> GetGainRatios(const edm::EventSetup &ES, const DetId &detid);
64 
65  // data specifiers
66 
67  edm::InputTag EBProducerSig_; // primary? name given to collection of EB calib digis
68  edm::InputTag EEProducerSig_; // primary? name given to collection of EE calib digis
69  edm::InputTag ESProducerSig_; // primary? name given to collection of ES calib digis
70 
71  edm::InputTag EBdigiCollectionSig_; // secondary name given to collection of
72  // EB calib digis
73  edm::InputTag EEdigiCollectionSig_; // secondary name given to collection of
74  // EE calib digis
75  edm::InputTag ESdigiCollectionSig_; // secondary name given to collection of
76  // ES calib digis
77 
78  edm::InputTag EBPileInputTag_; // complete input tag for EB pileup digis
79  edm::InputTag EEPileInputTag_; // complete input tag for EE pileup digis
80  edm::InputTag ESPileInputTag_; // complete input tag for ES pileup digis
81 
82  edm::EDGetTokenT<EBDigiCollection> EBDigiToken_; // Token to retrieve information
83  edm::EDGetTokenT<EEDigiCollection> EEDigiToken_; // Token to retrieve information
84  edm::EDGetTokenT<ESDigiCollection> ESDigiToken_; // Token to retrieve information
85 
86  edm::EDGetTokenT<EBDigiCollection> EBDigiPileToken_; // Token to retrieve information
87  edm::EDGetTokenT<EEDigiCollection> EEDigiPileToken_; // Token to retrieve information
88  edm::EDGetTokenT<ESDigiCollection> ESDigiPileToken_; // Token to retrieve information
89 
90  std::string EBDigiCollectionDM_; // secondary name to be given to EB
91  // collection of hits
92  std::string EEDigiCollectionDM_; // secondary name to be given to EE
93  // collection of hits
94  std::string ESDigiCollectionDM_; // secondary name to be given to ES
95  // collection of hits
96 
97  typedef std::multimap<DetId, EBDataFrame> EBDigiMap;
98  typedef std::multimap<DetId, EEDataFrame> EEDigiMap;
99  typedef std::multimap<DetId, ESDataFrame> ESDigiMap;
100 
101  EBDigiMap EBDigiStorage_;
102  EEDigiMap EEDigiStorage_;
103  ESDigiMap ESDigiStorage_;
104 
105  // unsigned int eventId_; //=0 for signal, from 1-n for pileup events
106 
108  };
109 } // namespace edm
110 
111 #endif // SimDataMixingEMDigiWorker_h
const std::vector< float > GetGainRatios(const edm::EventSetup &ES, const DetId &detid)
retrieve gain ratios for that detid [0]=g12, [1]=g6, [2]=g12
std::multimap< DetId, ESDataFrame > ESDigiMap
std::multimap< DetId, EBDataFrame > EBDigiMap
edm::EDGetTokenT< EEDigiCollection > EEDigiPileToken_
edm::EDGetTokenT< ESDigiCollection > ESDigiPileToken_
const std::vector< float > GetPedestals(const edm::EventSetup &ES, const DetId &detid)
retrieve pedestals for that detid [0]=g12, [1]=g6, [2]=g12
void addEMPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, const edm::EventSetup &ES, ModuleCallingContext const *)
void putEM(edm::Event &e, const edm::EventSetup &ES)
std::multimap< DetId, EEDataFrame > EEDigiMap
Definition: DetId.h:18
HLT enums.
void addEMSignals(const edm::Event &e, const edm::EventSetup &ES)
edm::EDGetTokenT< EBDigiCollection > EBDigiToken_
edm::EDGetTokenT< ESDigiCollection > ESDigiToken_
edm::EDGetTokenT< EEDigiCollection > EEDigiToken_
edm::EDGetTokenT< EBDigiCollection > EBDigiPileToken_