File indexing completed on 2024-04-06 12:30:33
0001 #ifndef SimDataMixingMuonWorker_h
0002 #define SimDataMixingMuonWorker_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #include "FWCore/Framework/interface/ConsumesCollector.h"
0018 #include "FWCore/Framework/interface/Event.h"
0019 #include "FWCore/Framework/interface/EventPrincipal.h"
0020 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0021
0022 #include "DataFormats/Common/interface/Handle.h"
0023 #include "DataFormats/Provenance/interface/ProductID.h"
0024
0025
0026 #include "DataFormats/DTDigi/interface/DTDigiCollection.h"
0027
0028 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
0029
0030 #include "DataFormats/CSCDigi/interface/CSCComparatorDigiCollection.h"
0031 #include "DataFormats/CSCDigi/interface/CSCStripDigiCollection.h"
0032 #include "DataFormats/CSCDigi/interface/CSCWireDigiCollection.h"
0033
0034 #include <map>
0035 #include <string>
0036 #include <vector>
0037
0038 namespace edm {
0039 class ModuleCallingContext;
0040
0041 class DataMixingMuonWorker {
0042 public:
0043 DataMixingMuonWorker();
0044
0045
0046 explicit DataMixingMuonWorker(const edm::ParameterSet &ps, edm::ConsumesCollector &&iC);
0047
0048
0049 virtual ~DataMixingMuonWorker();
0050
0051 void putMuon(edm::Event &e);
0052 void addMuonSignals(const edm::Event &e);
0053 void addMuonPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *);
0054
0055 private:
0056
0057
0058 edm::InputTag DTdigi_collectionSig_;
0059 edm::InputTag RPCdigi_collectionSig_;
0060 edm::InputTag CSCDigiTagSig_;
0061 edm::InputTag DTDigiTagSig_;
0062 edm::InputTag RPCDigiTagSig_;
0063 edm::InputTag CSCstripdigi_collectionSig_;
0064
0065 edm::InputTag CSCwiredigi_collectionSig_;
0066
0067 edm::InputTag CSCCompdigi_collectionSig_;
0068
0069
0070 edm::InputTag DTPileInputTag_;
0071 edm::InputTag RPCPileInputTag_;
0072 edm::InputTag CSCWirePileInputTag_;
0073 edm::InputTag CSCStripPileInputTag_;
0074 edm::InputTag CSCCompPileInputTag_;
0075
0076 edm::EDGetTokenT<DTDigiCollection> DTDigiToken_;
0077 edm::EDGetTokenT<CSCStripDigiCollection> CSCStripDigiToken_;
0078 edm::EDGetTokenT<CSCWireDigiCollection> CSCWireDigiToken_;
0079 edm::EDGetTokenT<CSCComparatorDigiCollection> CSCCompDigiToken_;
0080 edm::EDGetTokenT<RPCDigiCollection> RPCDigiToken_;
0081
0082 edm::EDGetTokenT<DTDigiCollection> DTDigiPToken_;
0083 edm::EDGetTokenT<CSCStripDigiCollection> CSCStripDigiPToken_;
0084 edm::EDGetTokenT<CSCWireDigiCollection> CSCWireDigiPToken_;
0085 edm::EDGetTokenT<CSCComparatorDigiCollection> CSCCompDigiPToken_;
0086 edm::EDGetTokenT<RPCDigiCollection> RPCDigiPToken_;
0087
0088 std::string DTDigiCollectionDM_;
0089 std::string RPCDigiCollectionDM_;
0090 std::string CSCStripDigiCollectionDM_;
0091
0092 std::string CSCWireDigiCollectionDM_;
0093
0094 std::string CSCComparatorDigiCollectionDM_;
0095
0096
0097
0098
0099
0100 DTDigiCollection *OurDTDigis_;
0101 RPCDigiCollection *OurRPCDigis_;
0102 CSCStripDigiCollection *OurCSCStripDigis_;
0103 CSCWireDigiCollection *OurCSCWireDigis_;
0104 CSCComparatorDigiCollection *OurCSCComparatorDigis_;
0105
0106
0107
0108 std::string label_;
0109 };
0110 }
0111
0112 #endif