Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:58:26

0001 #ifndef CalibMuon_DTT0AbsoluteReferenceCorrection_H
0002 #define CalibMuon_DTT0AbsoluteReferenceCorrection_H
0003 
0004 /** \class DTT0AbsoluteReferenceCorrection
0005  *  Concrete implementation of a DTT0BaseCorrection.
0006  *  Computes correction for t0
0007  *
0008  *  $Revision: 1.1 $
0009  *  \author A. Vilela Pereira
0010  */
0011 
0012 #include "CalibMuon/DTCalibration/interface/DTT0BaseCorrection.h"
0013 #include "DataFormats/MuonDetId/interface/DTChamberId.h"
0014 #include "FWCore/Framework/interface/ConsumesCollector.h"
0015 #include "FWCore/Utilities/interface/ESGetToken.h"
0016 #include "CondFormats/DataRecord/interface/DTT0Rcd.h"
0017 #include "CondFormats/DTObjects/interface/DTT0.h"
0018 #include <string>
0019 
0020 namespace edm {
0021   class ParameterSet;
0022 }
0023 
0024 class DTT0;
0025 
0026 namespace dtCalibration {
0027 
0028   class DTT0AbsoluteReferenceCorrection : public DTT0BaseCorrection {
0029   public:
0030     // Constructor
0031     DTT0AbsoluteReferenceCorrection(const edm::ParameterSet&, edm::ConsumesCollector);
0032 
0033     // Destructor
0034     ~DTT0AbsoluteReferenceCorrection() override;
0035 
0036     void setES(const edm::EventSetup& setup) override;
0037     DTT0Data correction(const DTWireId&) override;
0038 
0039   private:
0040     DTT0Data defaultT0(const DTWireId&);
0041 
0042     std::string calibChamber_;
0043     double reference_;
0044 
0045     DTChamberId chosenChamberId_;
0046     const DTT0* t0Map_;
0047     edm::ESGetToken<DTT0, DTT0Rcd> t0Token_;
0048   };
0049 
0050 }  // namespace dtCalibration
0051 #endif