/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
CondTools/CTPPS/plugins/PPSTimingCalibrationWriter.cc
50 строк
2 KB
Fabrizio
fix reference
26 ноя 2021, 17:10
26 ноя 2021, 17:10
f48deba
Код
Авторство
О чём код?
/**************************************************************************** * * This is a part of TOTEM/PPS offline software. * Author: * Laurent Forthomme (laurent.forthomme@cern.ch) * ****************************************************************************/ #include "FWCore/Framework/interface/Frameworkfwd.h" #include "FWCore/Framework/interface/one/EDAnalyzer.h" #include "FWCore/Framework/interface/Event.h" #include "FWCore/Framework/interface/EventSetup.h" #include "FWCore/Framework/interface/ESHandle.h" #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" #include "FWCore/ServiceRegistry/interface/Service.h" #include "CondCore/DBOutputService/interface/PoolDBOutputService.h" #include "CondFormats/PPSObjects/interface/PPSTimingCalibration.h" #include "CondFormats/DataRecord/interface/PPSTimingCalibrationRcd.h" #include <memory> class PPSTimingCalibrationWriter : public edm::one::EDAnalyzer<> { public: explicit PPSTimingCalibrationWriter(const edm::ParameterSet&) : tokenCalibration_(esConsumes<PPSTimingCalibration, PPSTimingCalibrationRcd>()) {} private: void beginJob() override {} void analyze(const edm::Event&, const edm::EventSetup&) override; void endJob() override {} edm::ESGetToken<PPSTimingCalibration, PPSTimingCalibrationRcd> tokenCalibration_; }; void PPSTimingCalibrationWriter::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) { // get timing calibration parameters const auto& hTimingCalib = iSetup.getData(tokenCalibration_); // store the calibration into a DB object edm::Service<cond::service::PoolDBOutputService> poolDbService; if (poolDbService.isAvailable()) poolDbService->writeOneIOV(hTimingCalib, poolDbService->currentTime(), "PPSTimingCalibrationRcd"); else throw cms::Exception("PPSTimingCalibrationWriter") << "PoolDBService required."; } DEFINE_FWK_MODULE(PPSTimingCalibrationWriter);