File indexing completed on 2024-09-07 04:34:57
0001 #ifndef DTTTrigOffsetCalibration_H
0002 #define DTTTrigOffsetCalibration_H
0003
0004
0005
0006
0007
0008
0009
0010 #include "FWCore/Framework/interface/one/EDAnalyzer.h"
0011 #include "FWCore/Utilities/interface/InputTag.h"
0012 #include "CalibMuon/DTCalibration/interface/DTSegmentSelector.h"
0013 #include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
0014 #include "Geometry/Records/interface/MuonGeometryRecord.h"
0015 #include "CondFormats/DataRecord/interface/DTTtrigRcd.h"
0016 #include "Geometry/DTGeometry/interface/DTGeometry.h"
0017
0018 #include <map>
0019
0020 namespace edm {
0021 class ParameterSet;
0022 class Event;
0023 class EventSetup;
0024 }
0025
0026 class DTChamberId;
0027 class DTTtrig;
0028 class TFile;
0029 class TH1F;
0030
0031 class DTTTrigOffsetCalibration : public edm::one::EDAnalyzer<edm::one::WatchRuns> {
0032 public:
0033
0034 DTTTrigOffsetCalibration(const edm::ParameterSet& pset);
0035
0036 ~DTTTrigOffsetCalibration() override;
0037
0038 void beginRun(const edm::Run& run, const edm::EventSetup& setup) override;
0039 void analyze(const edm::Event& event, const edm::EventSetup& eventSetup) override;
0040 void endRun(const edm::Run& run, const edm::EventSetup& setup) override {}
0041 void endJob() override;
0042
0043 private:
0044 typedef std::map<DTChamberId, std::vector<TH1F*> > ChamberHistosMap;
0045 void bookHistos(DTChamberId);
0046
0047 DTSegmentSelector* select_;
0048
0049 const edm::EDGetTokenT<DTRecSegment4DCollection> theRecHits4DToken_;
0050 const bool doTTrigCorrection_;
0051 const std::string theCalibChamber_;
0052
0053 TFile* rootFile_;
0054 const DTTtrig* tTrigMap_;
0055 ChamberHistosMap theT0SegHistoMap_;
0056
0057 const edm::ESGetToken<DTTtrig, DTTtrigRcd> ttrigToken_;
0058 const edm::ESGetToken<DTGeometry, MuonGeometryRecord> dtGeomToken_;
0059 };
0060 #endif