File indexing completed on 2024-04-06 12:10:58
0001 #ifndef EventFilter_RPCRawToDigi_RPCDigiMerger_h
0002 #define EventFilter_RPCRawToDigi_RPCDigiMerger_h
0003
0004 #include <cstdint>
0005 #include <vector>
0006 #include <utility>
0007 #include <set>
0008
0009 #include "FWCore/Framework/interface/ESHandle.h"
0010 #include "FWCore/Framework/interface/ESWatcher.h"
0011 #include "FWCore/Framework/interface/stream/EDProducer.h"
0012
0013 #include "DataFormats/RPCDigi/interface/RPCDigi.h"
0014 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
0015
0016 namespace edm {
0017 class ConfigurationDescriptions;
0018 class Event;
0019 class EventSetup;
0020 class ParameterSet;
0021 class Run;
0022 }
0023
0024 class RPCDigiMerger : public edm::stream::EDProducer<> {
0025 public:
0026 RPCDigiMerger(edm::ParameterSet const& config);
0027 ~RPCDigiMerger() override;
0028
0029 static void fillDescriptions(edm::ConfigurationDescriptions& descs);
0030
0031 void produce(edm::Event& event, edm::EventSetup const& setup) override;
0032
0033 protected:
0034 edm::EDGetTokenT<RPCDigiCollection> twinMux_token_;
0035 edm::EDGetTokenT<RPCDigiCollection> omtf_token_;
0036 edm::EDGetTokenT<RPCDigiCollection> cppf_token_;
0037 edm::EDGetTokenT<RPCDigiCollection> simRPC_token_;
0038
0039 int bx_minTwinMux_, bx_maxTwinMux_;
0040 int bx_minOMTF_, bx_maxOMTF_;
0041 int bx_minCPPF_, bx_maxCPPF_;
0042 };
0043
0044 #endif