CMS 3D CMS Logo

PPSTimingCalibrationWriter.cc
Go to the documentation of this file.
1 /****************************************************************************
2  *
3  * This is a part of TOTEM/PPS offline software.
4  * Author:
5  * Laurent Forthomme (laurent.forthomme@cern.ch)
6  *
7  ****************************************************************************/
8 
15 
18 
20 
23 
24 #include <memory>
25 
27 public:
29 
30 private:
31  void beginJob() override {}
32  void analyze(const edm::Event&, const edm::EventSetup&) override;
33  void endJob() override {}
34 };
35 
37  // get timing calibration parameters
39  iSetup.get<PPSTimingCalibrationRcd>().get(hTimingCalib);
40 
41  // store the calibration into a DB object
43  if (poolDbService.isAvailable())
44  poolDbService->writeOne(hTimingCalib.product(), poolDbService->currentTime(), "PPSTimingCalibrationRcd");
45  else
46  throw cms::Exception("PPSTimingCalibrationWriter") << "PoolDBService required.";
47 }
48 
void analyze(const edm::Event &, const edm::EventSetup &) override
EventSetup record for TOTEM/PPS timing calibration information.
int iEvent
Definition: GenABIO.cc:224
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
bool isAvailable() const
Definition: Service.h:40
void writeOne(T *payload, Time_t time, const std::string &recordName, bool withlogging=false)
PPSTimingCalibrationWriter(const edm::ParameterSet &)
T get() const
Definition: EventSetup.h:73
T const * product() const
Definition: ESHandle.h:86