Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef DTSegment_DTRecSegment4DProducer_H
0002 #define DTSegment_DTRecSegment4DProducer_H
0003 
0004 /** \class DTRecSegment4DProducer
0005  *  Builds the segments in the DT chambers.
0006  *
0007  * \author Riccardo Bellan - INFN Torino <riccardo.bellan@cern.ch>
0008  */
0009 
0010 #include "FWCore/Framework/interface/stream/EDProducer.h"
0011 #include "DataFormats/DTRecHit/interface/DTRecHitCollection.h"
0012 #include "DataFormats/DTRecHit/interface/DTRecSegment2DCollection.h"
0013 
0014 namespace edm {
0015   class ParameterSet;
0016   class Event;
0017   class EventSetup;
0018 }  // namespace edm
0019 class DTRecSegment4DBaseAlgo;
0020 
0021 class DTRecSegment4DProducer : public edm::stream::EDProducer<> {
0022 public:
0023   /// Constructor
0024   DTRecSegment4DProducer(const edm::ParameterSet&);
0025 
0026   /// Destructor
0027   ~DTRecSegment4DProducer() override;
0028 
0029   // Operations
0030 
0031   /// The method which produces the 4D rec segments
0032   void produce(edm::Event& event, const edm::EventSetup& setup) override;
0033 
0034 protected:
0035 private:
0036   // Switch on verbosity
0037   bool debug;
0038 
0039   edm::EDGetTokenT<DTRecHitCollection> recHits1DToken_;
0040   edm::EDGetTokenT<DTRecSegment2DCollection> recHits2DToken_;
0041   // The 4D-segments reconstruction algorithm
0042   std::unique_ptr<DTRecSegment4DBaseAlgo> the4DAlgo;
0043 };
0044 #endif