Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:07

0001 #ifndef RecoLocalMuon_DTRecHitProducer_h
0002 #define RecoLocalMuon_DTRecHitProducer_h
0003 
0004 /** \class DTRecHitProducer
0005  *  Module for 1D DTRecHitPairs production. The concrete reconstruction algorithm
0006  *  is specified with the parameter "recAlgo" and must be configured with the
0007  *  "recAlgoConfig" parameter set.
0008  *
0009  *  \author G. Cerminara
0010  */
0011 
0012 #include "FWCore/Framework/interface/stream/EDProducer.h"
0013 #include "FWCore/Utilities/interface/InputTag.h"
0014 #include "DataFormats/DTDigi/interface/DTDigiCollection.h"
0015 
0016 namespace edm {
0017   class ParameterSet;
0018   class Event;
0019   class EventSetup;
0020 }  // namespace edm
0021 
0022 class DTRecHitBaseAlgo;
0023 class DTGeometry;
0024 class MuonGeometryRecord;
0025 
0026 class DTRecHitProducer : public edm::stream::EDProducer<> {
0027 public:
0028   /// Constructor
0029   DTRecHitProducer(const edm::ParameterSet&);
0030 
0031   /// Destructor
0032   ~DTRecHitProducer() override;
0033 
0034   /// The method which produces the rechits
0035   void produce(edm::Event& event, const edm::EventSetup& setup) override;
0036 
0037 private:
0038   // Switch on verbosity
0039   const bool debug;
0040   // The label to be used to retrieve DT digis from the event
0041   edm::EDGetTokenT<DTDigiCollection> DTDigiToken_;
0042   edm::ESGetToken<DTGeometry, MuonGeometryRecord> dtGeomToken_;
0043   // The reconstruction algorithm
0044   std::unique_ptr<DTRecHitBaseAlgo> theAlgo;
0045 };
0046 #endif