85 edm::LogInfo(
"Geometry") <<
"@SUB=MTDDigiGeometryESModule" 94 descDB.
add<
bool>(
"fromDDD",
false);
95 descDB.
add<
bool>(
"applyAlignment",
true);
97 descriptions.
add(
"mtdGeometryDB", descDB);
101 desc.
add<
bool>(
"fromDDD",
true);
102 desc.
add<
bool>(
"applyAlignment",
true);
104 descriptions.
add(
"mtdGeometry", desc);
119 std::unique_ptr<MTDGeometry>
mtd(builder.
build(&(gD), ptp, &tTopo));
127 if (alignments.
empty() && alignmentErrors.
empty() && globalPosition.
empty()) {
128 edm::LogInfo(
"Config") <<
"@SUB=MTDDigiGeometryRecord::produce" 130 <<
"') empty: Geometry producer (label " 131 <<
"'" <<
myLabel_ <<
"') assumes fake and does not apply.";
142 if (surfaceDeformations.empty()) {
143 edm::LogInfo(
"Config") <<
"@SUB=MTDDigiGeometryRecord::produce" 145 <<
"') empty: Geometry producer (label " 146 <<
"'" <<
myLabel_ <<
"') assumes fake and does not apply.";
edm::ESGetToken< GeometricTimingDet, IdealGeometryRecord > geomTimingDetToken_
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
edm::ESGetToken< Alignments, MTDAlignmentRcd > mtdAlignToken_
bool empty() const
Test of empty vector without having to look into internals:
Class to update a given geometry with a set of alignments.
edm::ESGetToken< MTDTopology, MTDTopologyRcd > mtdTopoToken_
edm::ESGetToken< AlignmentSurfaceDeformations, MTDSurfaceDeformationRcd > deformationsToken_
edm::ESGetToken< Alignments, GlobalPositionRcd > globalAlignToken_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
edm::ESGetToken< PMTDParameters, PMTDParametersRcd > pmtdParamsToken_
const std::string myLabel_
void attachSurfaceDeformations(C *geometry, const AlignmentSurfaceDeformations *surfaceDeformations)
edm::ESGetToken< AlignmentErrorsExtended, MTDAlignmentErrorExtendedRcd > alignErrorsToken_
MTDDigiGeometryESModule(const edm::ParameterSet &p)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
MTDGeometry * build(const GeometricTimingDet *gd, const PMTDParameters &ptp, const MTDTopology *tTopo)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
void applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
const std::string alignmentsLabel_
Called when geometry description changes.
void add(std::string const &label, ParameterSetDescription const &psetDescription)
bool empty() const
Test of empty vector without having to look into internals:
const bool applyAlignment_
const AlignTransform & DetectorGlobalPosition(const Alignments &allGlobals, const DetId &id)
std::unique_ptr< MTDGeometry > produce(const MTDDigiGeometryRecord &)