Skip to content

Commit

Permalink
Merge pull request #32992 from slomeo/UpdateMigrationToDD4HepForCSCan…
Browse files Browse the repository at this point in the history
…dRPCdbLoader

Update Migration to DD4Hep for CSC and RPC db Loader
  • Loading branch information
cmsbuild authored Feb 26, 2021
2 parents c3f3c65 + aab9a40 commit 7302906
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
# the reco part of the database need the DDCompactView.
process.load('Configuration.Geometry.GeometryExtended2021_cff')
process.load('Geometry.MuonNumbering.muonNumberingInitialization_cfi')
process.load("Geometry.MuonNumbering.muonGeometryConstants_cff")
process.load('Configuration.StandardSequences.DD4hep_GeometrySim_cff')
process.load('Geometry.CaloEventSetup.CaloGeometryDBWriter_cfi')
process.load('CondTools.Geometry.HcalParametersWriter_cff')

Expand All @@ -34,11 +36,11 @@

process.CaloGeometryWriter = cms.EDAnalyzer("PCaloGeometryBuilder")

process.CSCGeometryWriter = cms.EDAnalyzer("CSCRecoIdealDBLoader")
process.CSCGeometryWriter = cms.EDAnalyzer("CSCRecoIdealDBLoader",fromDD4Hep = cms.untracked.bool(False))

process.DTGeometryWriter = cms.EDAnalyzer("DTRecoIdealDBLoader")

process.RPCGeometryWriter = cms.EDAnalyzer("RPCRecoIdealDBLoader")
process.RPCGeometryWriter = cms.EDAnalyzer("RPCRecoIdealDBLoader",fromDD4Hep = cms.untracked.bool(False))

process.GEMGeometryWriter = cms.EDAnalyzer("GEMRecoIdealDBLoader")

Expand Down
5 changes: 4 additions & 1 deletion Geometry/CSCGeometryBuilder/plugins/CSCGeometryESModule.cc
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,7 @@ std::shared_ptr<CSCGeometry> CSCGeometryESModule::produce(const MuonGeometryReco

void CSCGeometryESModule::initCSCGeometry_(const MuonGeometryRecord& record, std::shared_ptr<HostType>& host) {
if (fromDDD_) {
edm::LogVerbatim("CSCGeoemtryESModule") << "(0) CSCGeometryESModule - DDD ";
host->ifRecordChanges<IdealGeometryRecord>(record, [&host, &record, this](auto const& rec) {
host->clear();
edm::ESTransientHandle<DDCompactView> cpv = record.getTransientHandle(cpvToken_);
Expand All @@ -213,6 +214,7 @@ void CSCGeometryESModule::initCSCGeometry_(const MuonGeometryRecord& record, std
builder.build(*host, cpv.product(), mdc);
});
} else if (fromDD4hep_) {
edm::LogVerbatim("CSCGeoemtryESModule") << "(0) CSCGeometryESModule - DD4HEP ";
host->ifRecordChanges<IdealGeometryRecord>(record, [&host, &record, this](auto const& rec) {
host->clear();
edm::ESTransientHandle<cms::DDCompactView> cpv = record.getTransientHandle(cpvTokendd4hep_);
Expand All @@ -228,8 +230,9 @@ void CSCGeometryESModule::initCSCGeometry_(const MuonGeometryRecord& record, std

host->ifRecordChanges<CSCRecoDigiParametersRcd>(record,
[&recreateGeometry](auto const& rec) { recreateGeometry = true; });

edm::LogVerbatim("CSCGeoemtryESModule") << "(0) CSCGeometryESModule - DB recreateGeometry=false ";
if (recreateGeometry) {
edm::LogVerbatim("CSCGeoemtryESModule") << "(0) CSCGeometryESModule - DB recreateGeometry=true ";
host->clear();
const auto& rig = record.get(rigToken_);
const auto& rdp = record.get(rdpToken_);
Expand Down
3 changes: 3 additions & 0 deletions Geometry/RPCGeometryBuilder/plugins/RPCGeometryESModule.cc
Original file line number Diff line number Diff line change
Expand Up @@ -74,16 +74,19 @@ void RPCGeometryESModule::fillDescriptions(edm::ConfigurationDescriptions& descr

std::unique_ptr<RPCGeometry> RPCGeometryESModule::produce(const MuonGeometryRecord& record) {
if (fromDDD_) {
edm::LogVerbatim("RPCGeoemtryESModule") << "(0) RPCGeometryESModule - DDD ";
edm::ESTransientHandle<DDCompactView> cpv = record.getTransientHandle(idealGeomToken_);
auto const& mdc = record.get(dddConstantsToken_);
RPCGeometryBuilder builder;
return std::unique_ptr<RPCGeometry>(builder.build(&(*cpv), mdc));
} else if (fromDD4hep_) {
edm::LogVerbatim("RPCGeoemtryESModule") << "(0) RPCGeometryESModule - DD4HEP ";
edm::ESTransientHandle<cms::DDCompactView> cpv = record.getTransientHandle(idealDD4hepGeomToken_);
auto const& mdc = record.get(dddConstantsToken_);
RPCGeometryBuilder builder;
return std::unique_ptr<RPCGeometry>(builder.build(&(*cpv), mdc));
} else {
edm::LogVerbatim("RPCGeoemtryESModule") << "(0) RPCGeometryESModule - DB ";
auto const& rigrpc = record.get(recoIdealToken_);
RPCGeometryBuilderFromCondDB builder;
return std::unique_ptr<RPCGeometry>(builder.build(rigrpc));
Expand Down

0 comments on commit 7302906

Please sign in to comment.