Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 09:45:48

0001 #ifndef EventFilter_SiStripRawToDigi_ExcludedFEDListProducer_H
0002 #define EventFilter_SiStripRawToDigi_ExcludedFEDListProducer_H
0003 
0004 #include "FWCore/Framework/interface/Frameworkfwd.h"
0005 #include "FWCore/Framework/interface/stream/EDProducer.h"
0006 #include "FWCore/Framework/interface/Event.h"
0007 #include "FWCore/Framework/interface/EventSetup.h"
0008 #include "FWCore/Framework/interface/ESHandle.h"
0009 #include "FWCore/Framework/interface/MakerMacros.h"
0010 #include "FWCore/Utilities/interface/ESGetToken.h"
0011 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0012 #include "DataFormats/Common/interface/Handle.h"
0013 #include "DataFormats/Common/interface/DetSetVector.h"
0014 #include "DataFormats/DetId/interface/DetIdVector.h"
0015 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h"
0016 #include "EventFilter/SiStripRawToDigi/interface/SiStripFEDBuffer.h"
0017 #include "CondFormats/SiStripObjects/interface/SiStripFedCabling.h"
0018 #include "DataFormats/FEDRawData/interface/FEDRawDataCollection.h"
0019 #include "CondFormats/DataRecord/interface/SiStripFedCablingRcd.h"
0020 #include <iostream>
0021 #include <string>
0022 #include <vector>
0023 #include <cstdint>
0024 
0025 namespace sistrip {
0026 
0027   class ExcludedFEDListProducer : public edm::stream::EDProducer<> {
0028   public:
0029     /// constructor
0030     ExcludedFEDListProducer(const edm::ParameterSet& pset);
0031     /// default constructor
0032     ~ExcludedFEDListProducer() override;
0033     void beginRun(const edm::Run& run, const edm::EventSetup& es) override;
0034     static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0035     void produce(edm::Event& event, const edm::EventSetup& es) override;
0036 
0037   private:
0038     unsigned int runNumber_;
0039     uint32_t cacheId_;
0040     const SiStripFedCabling* cabling_;
0041     const edm::EDGetTokenT<FEDRawDataCollection> token_;
0042     edm::ESGetToken<SiStripFedCabling, SiStripFedCablingRcd> cablingToken_;
0043 
0044     DetIdVector detids_;
0045   };
0046 }  // namespace sistrip
0047 #endif  // EventFilter_SiStripRawToDigi_ExcludedFEDListProducer_H