34 #include "DD4hep/Detector.h"
67 : fromDB_(iConfig.getParameter<bool>(
"fromDB")),
68 appendToDataLabel_(iConfig.getParameter<
string>(
"appendToDataLabel")),
69 confGeomXMLFiles_(fromDB_ ?
"none" : iConfig.getParameter<
FileInPath>(
"confGeomXMLFiles").
fullPath()),
70 rootDDName_(iConfig.getParameter<
string>(
"rootDDName")),
71 label_(iConfig.getParameter<
string>(
"label")) {
83 findingRecord<IdealMagneticFieldRecord>();
89 findingRecord<IdealGeometryRecord>();
99 desc.
add<
string>(
"rootDDName",
"cms:OCMS");
100 desc.
add<
string>(
"label",
"");
101 desc.
add<
bool>(
"fromDB",
false);
102 descriptions.
add(
"DDDetectorESProducer", desc);
105 descDB.
add<
string>(
"rootDDName",
"cms:OCMS");
106 descDB.
add<
string>(
"label",
"Extended");
107 descDB.
add<
bool>(
"fromDB",
true);
108 descriptions.
add(
"DDDetectorESProducerFromDB", descDB);
114 oInterval =
ValidityInterval(IOVSyncValue::beginOfTime(), IOVSyncValue::endOfTime());
121 unique_ptr<vector<unsigned char> > tb = (*gdd).getUncompressedBlob();
123 return make_unique<cms::DDDetector>(
label_,
string(tb->begin(), tb->end()),
true);
133 unique_ptr<vector<unsigned char> > tb = (*gdd).getUncompressedBlob();
135 return make_unique<cms::DDDetector>(
label_,
string(tb->begin(), tb->end()),
true);
edm::ESGetToken< FileBlob, GeometryFileRcd > geomToken_
Log< level::Info, true > LogVerbatim
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
static const std::string kDD4hep
const edm::EventSetup & c
ParameterDescriptionBase * addOptional(U const &iLabel, T const &value)
std::pair< Time_t, Time_t > ValidityInterval
ESTransientHandle< ProductT > getTransientHandle(ESGetToken< ProductT, DepRecordT > const &iToken) const
unique_ptr< DDDetector > ReturnType
const string appendToDataLabel_
const string confGeomXMLFiles_
edm::ESGetToken< FileBlob, MFGeometryFileRcd > mfToken_
void usesResources(std::vector< std::string > const &)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void setIntervalFor(const eventsetup::EventSetupRecordKey &, const IOVSyncValue &, ValidityInterval &) override
tuple DDDetectorESProducer
#define DEFINE_FWK_EVENTSETUP_SOURCE(type)
ReturnType produceMagField(const IdealMagneticFieldRecord &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
T getParameter(std::string const &) const
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptions(ConfigurationDescriptions &)
dd4hep::Detector Detector
~DDDetectorESProducer() override
DDDetectorESProducer(const ParameterSet &)
ReturnType produceGeom(const IdealGeometryRecord &)