Skip to content

Commit

Permalink
Merge pull request #36062 from thomreis/ecal_pooldboutput_migration
Browse files Browse the repository at this point in the history
ECAL PoolDBOutput code migration
  • Loading branch information
cmsbuild committed Nov 12, 2021
2 parents e71423a + 07c1b12 commit 6e91d22
Show file tree
Hide file tree
Showing 18 changed files with 563 additions and 694 deletions.
115 changes: 38 additions & 77 deletions CalibCalorimetry/EcalTPGTools/plugins/EcalTPGDBCopy.cc
Expand Up @@ -148,119 +148,80 @@ void EcalTPGDBCopy::copyToDB(const edm::EventSetup& evtSetup, const std::string&
std::string recordName = m_records[container];

if (container == "EcalTPGPedestals") {
const auto handle = evtSetup.getHandle(pedestalsToken_);
const EcalTPGPedestals* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGPedestals>(
new EcalTPGPedestals(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(pedestalsToken_);
dbOutput->createOneIOV<const EcalTPGPedestals>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGLinearizationConst") {
const auto handle = evtSetup.getHandle(linearizationConstToken_);
const EcalTPGLinearizationConst* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGLinearizationConst>(
new EcalTPGLinearizationConst(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(linearizationConstToken_);
dbOutput->createOneIOV<const EcalTPGLinearizationConst>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGSlidingWindow") {
const auto handle = evtSetup.getHandle(slidingWindowToken_);
const EcalTPGSlidingWindow* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGSlidingWindow>(
new EcalTPGSlidingWindow(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(slidingWindowToken_);
dbOutput->createOneIOV<const EcalTPGSlidingWindow>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGFineGrainEBIdMap") {
const auto handle = evtSetup.getHandle(fineGrainEBIdMapToken_);
const EcalTPGFineGrainEBIdMap* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGFineGrainEBIdMap>(
new EcalTPGFineGrainEBIdMap(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(fineGrainEBIdMapToken_);
dbOutput->createOneIOV<const EcalTPGFineGrainEBIdMap>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGFineGrainStripEE") {
const auto handle = evtSetup.getHandle(fineGrainStripEEToken_);
const EcalTPGFineGrainStripEE* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGFineGrainStripEE>(
new EcalTPGFineGrainStripEE(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(fineGrainStripEEToken_);
dbOutput->createOneIOV<const EcalTPGFineGrainStripEE>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGFineGrainTowerEE") {
const auto handle = evtSetup.getHandle(fineGrainTowerEEToken_);
const EcalTPGFineGrainTowerEE* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGFineGrainTowerEE>(
new EcalTPGFineGrainTowerEE(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(fineGrainTowerEEToken_);
dbOutput->createOneIOV<const EcalTPGFineGrainTowerEE>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGLutIdMap") {
const auto handle = evtSetup.getHandle(lutIdMapToken_);
const EcalTPGLutIdMap* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGLutIdMap>(
new EcalTPGLutIdMap(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(lutIdMapToken_);
dbOutput->createOneIOV<const EcalTPGLutIdMap>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGWeightIdMap") {
const auto handle = evtSetup.getHandle(weightIdMapToken_);
const EcalTPGWeightIdMap* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGWeightIdMap>(
new EcalTPGWeightIdMap(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(weightIdMapToken_);
dbOutput->createOneIOV<const EcalTPGWeightIdMap>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGWeightGroup") {
const auto handle = evtSetup.getHandle(weightGroupToken_);
const EcalTPGWeightGroup* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGWeightGroup>(
new EcalTPGWeightGroup(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(weightGroupToken_);
dbOutput->createOneIOV<const EcalTPGWeightGroup>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGOddWeightIdMap") {
const auto handle = evtSetup.getHandle(oddWeightIdMapToken_);
const EcalTPGOddWeightIdMap* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGOddWeightIdMap>(
new EcalTPGOddWeightIdMap(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(oddWeightIdMapToken_);
dbOutput->createOneIOV<const EcalTPGOddWeightIdMap>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGOddWeightGroup") {
const auto handle = evtSetup.getHandle(oddWeightGroupToken_);
const EcalTPGOddWeightGroup* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGOddWeightGroup>(
new EcalTPGOddWeightGroup(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(oddWeightGroupToken_);
dbOutput->createOneIOV<const EcalTPGOddWeightGroup>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGTPMode") {
const auto handle = evtSetup.getHandle(tpModeToken_);
const EcalTPGTPMode* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGTPMode>(
new EcalTPGTPMode(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(tpModeToken_);
dbOutput->createOneIOV<const EcalTPGTPMode>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGLutGroup") {
const auto handle = evtSetup.getHandle(lutGroupToken_);
const EcalTPGLutGroup* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGLutGroup>(
new EcalTPGLutGroup(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(lutGroupToken_);
dbOutput->createOneIOV<const EcalTPGLutGroup>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGFineGrainEBGroup") {
const auto handle = evtSetup.getHandle(fineGrainEBGroupToken_);
const EcalTPGFineGrainEBGroup* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGFineGrainEBGroup>(
new EcalTPGFineGrainEBGroup(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(fineGrainEBGroupToken_);
dbOutput->createOneIOV<const EcalTPGFineGrainEBGroup>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGPhysicsConst") {
const auto handle = evtSetup.getHandle(physicsConstToken_);
const EcalTPGPhysicsConst* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGPhysicsConst>(
new EcalTPGPhysicsConst(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(physicsConstToken_);
dbOutput->createOneIOV<const EcalTPGPhysicsConst>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGCrystalStatus") {
const auto handle = evtSetup.getHandle(crystalStatusToken_);
const EcalTPGCrystalStatus* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGCrystalStatus>(
new EcalTPGCrystalStatus(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(crystalStatusToken_);
dbOutput->createOneIOV<const EcalTPGCrystalStatus>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGTowerStatus") {
const auto handle = evtSetup.getHandle(towerStatusToken_);
const EcalTPGTowerStatus* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGTowerStatus>(
new EcalTPGTowerStatus(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(towerStatusToken_);
dbOutput->createOneIOV<const EcalTPGTowerStatus>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGSpike") {
const auto handle = evtSetup.getHandle(spikeToken_);
const EcalTPGSpike* obj = handle.product();

dbOutput->createNewIOV<const EcalTPGSpike>(
new EcalTPGSpike(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(spikeToken_);
dbOutput->createOneIOV<const EcalTPGSpike>(obj, dbOutput->beginOfTime(), recordName);

} else if (container == "EcalTPGStripStatus") {
const auto handle = evtSetup.getHandle(stripStatusToken_);
const EcalTPGStripStatus* obj = handle.product();
dbOutput->createNewIOV<const EcalTPGStripStatus>(
new EcalTPGStripStatus(*obj), dbOutput->beginOfTime(), dbOutput->endOfTime(), recordName);
const auto& obj = evtSetup.getData(stripStatusToken_);
dbOutput->createOneIOV<const EcalTPGStripStatus>(obj, dbOutput->beginOfTime(), recordName);

} else {
throw cms::Exception("Unknown container");
Expand Down
Expand Up @@ -12,7 +12,7 @@

#include "FWCore/Framework/interface/ModuleFactory.h"
#include "FWCore/MessageLogger/interface/MessageLogger.h"
#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "FWCore/Framework/interface/ESProducts.h"

#include "CondFormats/EcalObjects/interface/EcalTimeBiasCorrections.h"
Expand All @@ -27,7 +27,7 @@
#include "FWCore/ServiceRegistry/interface/Service.h"
#include "CondCore/DBOutputService/interface/PoolDBOutputService.h"

class EcalTimeBiasCorrectionsFillInitial : public edm::EDAnalyzer {
class EcalTimeBiasCorrectionsFillInitial : public edm::one::EDAnalyzer<> {
public:
explicit EcalTimeBiasCorrectionsFillInitial(const edm::ParameterSet &);
~EcalTimeBiasCorrectionsFillInitial();
Expand All @@ -41,7 +41,7 @@ class EcalTimeBiasCorrectionsFillInitial : public edm::EDAnalyzer {
std::vector<double> EEtimeCorrAmplitudeBins_;
std::vector<double> EEtimeCorrShiftBins_;

EcalTimeBiasCorrections *bias_;
EcalTimeBiasCorrections bias_;
};

EcalTimeBiasCorrectionsFillInitial::EcalTimeBiasCorrectionsFillInitial(const edm::ParameterSet &ps) {
Expand All @@ -60,15 +60,13 @@ EcalTimeBiasCorrectionsFillInitial::EcalTimeBiasCorrectionsFillInitial(const edm
"different from EEtimeCorrShiftBins.";
}

bias_ = new EcalTimeBiasCorrections();
copy(EBtimeCorrAmplitudeBins_.begin(), EBtimeCorrAmplitudeBins_.end(), back_inserter(bias_.EBTimeCorrAmplitudeBins));

copy(EBtimeCorrAmplitudeBins_.begin(), EBtimeCorrAmplitudeBins_.end(), back_inserter(bias_->EBTimeCorrAmplitudeBins));
copy(EBtimeCorrShiftBins_.begin(), EBtimeCorrShiftBins_.end(), back_inserter(bias_.EBTimeCorrShiftBins));

copy(EBtimeCorrShiftBins_.begin(), EBtimeCorrShiftBins_.end(), back_inserter(bias_->EBTimeCorrShiftBins));
copy(EEtimeCorrAmplitudeBins_.begin(), EEtimeCorrAmplitudeBins_.end(), back_inserter(bias_.EETimeCorrAmplitudeBins));

copy(EEtimeCorrAmplitudeBins_.begin(), EEtimeCorrAmplitudeBins_.end(), back_inserter(bias_->EETimeCorrAmplitudeBins));

copy(EEtimeCorrShiftBins_.begin(), EEtimeCorrShiftBins_.end(), back_inserter(bias_->EETimeCorrShiftBins));
copy(EEtimeCorrShiftBins_.begin(), EEtimeCorrShiftBins_.end(), back_inserter(bias_.EETimeCorrShiftBins));
}

EcalTimeBiasCorrectionsFillInitial::~EcalTimeBiasCorrectionsFillInitial() {}
Expand All @@ -77,7 +75,7 @@ void EcalTimeBiasCorrectionsFillInitial::analyze(const edm::Event &iEvent, const
void EcalTimeBiasCorrectionsFillInitial::endJob() {
edm::Service<cond::service::PoolDBOutputService> poolDbService;
if (poolDbService.isAvailable()) {
poolDbService->writeOne(this->bias_, poolDbService->beginOfTime(), "EcalTimeBiasCorrectionsRcd");
poolDbService->writeOneIOV(bias_, poolDbService->beginOfTime(), "EcalTimeBiasCorrectionsRcd");
}
}

Expand Down
29 changes: 15 additions & 14 deletions CondTools/Ecal/interface/EcalTestDevDB.h
@@ -1,7 +1,7 @@
#ifndef ECALTESTDEVDB_H
#define ECALTESTDEVDB_H
#ifndef CondTools_Ecal_EcalTestDevDB_h
#define CondTools_Ecal_EcalTestDevDB_h

#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "CondCore/CondDB/interface/Exception.h"

#include "FWCore/Framework/interface/IOVSyncValue.h"
Expand Down Expand Up @@ -30,30 +30,31 @@

#include <string>
#include <map>
#include <memory>

namespace edm {
class ParameterSet;
class Event;
class EventSetup;
} // namespace edm

class EcalTestDevDB : public edm::EDAnalyzer {
class EcalTestDevDB : public edm::one::EDAnalyzer<> {
public:
explicit EcalTestDevDB(const edm::ParameterSet& iConfig);
~EcalTestDevDB() override;

void analyze(const edm::Event& evt, const edm::EventSetup& evtSetup) override;

EcalPedestals* generateEcalPedestals();
EcalADCToGeVConstant* generateEcalADCToGeVConstant();
EcalIntercalibConstants* generateEcalIntercalibConstants();
EcalLinearCorrections* generateEcalLinearCorrections();
EcalGainRatios* generateEcalGainRatios();
EcalWeightXtalGroups* generateEcalWeightXtalGroups();
EcalTBWeights* generateEcalTBWeights();
EcalLaserAPDPNRatios* generateEcalLaserAPDPNRatios(uint32_t i_run);
EcalLaserAlphas* generateEcalLaserAlphas();
EcalLaserAPDPNRatiosRef* generateEcalLaserAPDPNRatiosRef();
std::shared_ptr<EcalPedestals> generateEcalPedestals();
std::shared_ptr<EcalADCToGeVConstant> generateEcalADCToGeVConstant();
std::shared_ptr<EcalIntercalibConstants> generateEcalIntercalibConstants();
std::shared_ptr<EcalLinearCorrections> generateEcalLinearCorrections();
std::shared_ptr<EcalGainRatios> generateEcalGainRatios();
std::shared_ptr<EcalWeightXtalGroups> generateEcalWeightXtalGroups();
std::shared_ptr<EcalTBWeights> generateEcalTBWeights();
std::shared_ptr<EcalLaserAPDPNRatios> generateEcalLaserAPDPNRatios(uint32_t i_run);
std::shared_ptr<EcalLaserAlphas> generateEcalLaserAlphas();
std::shared_ptr<EcalLaserAPDPNRatiosRef> generateEcalLaserAPDPNRatiosRef();

private:
std::string m_timetype;
Expand Down

0 comments on commit 6e91d22

Please sign in to comment.