63 : useDDD_(p.getParameter<
bool>(
"useDDD")),
64 applyAlignment_(p.getParameter<
bool>(
"applyAlignment")),
65 alignmentsLabel_(p.getParameter<
std::
string>(
"alignmentsLabel")) {
82 auto gemGeometry = std::make_unique<GEMGeometry>();
88 builder.
build(*gemGeometry, cpv.product(), mdc);
92 builder.
build(*gemGeometry, riggem);
101 if (alignments.empty() && alignmentErrors.empty() && globalPosition.empty()) {
102 edm::LogInfo(
"Config") <<
"@SUB=GEMGeometryRecord::produce" 104 <<
"') empty: it is assumed fake and will not apply.";
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
edm::ESGetToken< AlignmentErrorsExtended, GEMAlignmentErrorExtendedRcd > alignmentErrorsToken_
Class to update a given geometry with a set of alignments.
ESTransientHandle< ProductT > getTransientHandle(ESGetToken< ProductT, DepRecordT > const &iToken) const
std::unique_ptr< GEMGeometry > produce(const MuonGeometryRecord &record)
Produce GEMGeometry.
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
void build(GEMGeometry &theGeometry, const DDCompactView *cview, const MuonDDDConstants &muonConstants)
edm::ESGetToken< Alignments, GlobalPositionRcd > globalPositionToken_
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
void applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
edm::ESGetToken< DDCompactView, IdealGeometryRecord > cpvToken_
GEMGeometryESModule(const edm::ParameterSet &p)
Constructor.
edm::ESGetToken< RecoIdealGeometry, GEMRecoGeometryRcd > riggemToken_
edm::ESGetToken< MuonDDDConstants, MuonNumberingRecord > mdcToken_
const AlignTransform & DetectorGlobalPosition(const Alignments &allGlobals, const DetId &id)
edm::ESGetToken< Alignments, GEMAlignmentRcd > alignmentsToken_
~GEMGeometryESModule() override
Destructor.
const std::string alignmentsLabel_
void build(GEMGeometry &theGeometry, const RecoIdealGeometry &rgeo)