33 : alignmentsLabel_(p.getParameter<
std::
string>(
"alignmentsLabel")),
34 myLabel_(p.getParameter<
std::
string>(
"appendToDataLabel"))
56 if ( useGangedStripsInME1a ) useOnlyWiresInME1a =
false;
74 << (applyAlignment_ ?
"looking for" :
"IGNORING")
107 if (alignments->
empty() && alignmentErrors->
empty() && globalPosition->
empty()) {
108 edm::LogInfo(
"Config") <<
"@SUB=CSCGeometryRecord::produce" 109 <<
"Alignment(Error)s and global position (label '" 111 <<
"'" <<
myLabel_ <<
"') assumes fake and does not apply.";
134 builder.
build(*host, &(*cpv), *mdc);
137 bool recreateGeometry =
false;
140 [&recreateGeometry](
auto const& rec) {
141 recreateGeometry =
true;
145 [&recreateGeometry](
auto const& rec) {
146 recreateGeometry =
true;
149 if (recreateGeometry) {
156 cscgb.
build(*host, *rig, *rdp);
T getParameter(std::string const &) const
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
T getUntrackedParameter(std::string const &, T const &) const
edm::ESProductHost< CSCGeometry, MuonNumberingRecord, CSCRecoGeometryRcd, CSCRecoDigiParametersRcd > HostType
bool empty() const
Test of empty vector without having to look into internals:
CSCGeometryESModule(const edm::ParameterSet &p)
Constructor.
const std::string alignmentsLabel_
Class to update a given geometry with a set of alignments.
const std::string myLabel_
void build(CSCGeometry &theGeometry, const RecoIdealGeometry &rig, const CSCRecoDigiParameters &cscpars)
Build the geometry.
void initCSCGeometry_(const MuonGeometryRecord &, std::shared_ptr< HostType > &host)
~CSCGeometryESModule() override
Destructor.
bool useGangedStripsInME1a
void build(CSCGeometry &geom, const DDCompactView *fv, const MuonDDDConstants &muonConstants)
Build the geometry.
const DepRecordT getRecord() const
std::shared_ptr< CSCGeometry > produce(const MuonGeometryRecord &record)
Produce CSCGeometry.
void applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
bool empty() const
Test of empty vector without having to look into internals:
const AlignTransform & DetectorGlobalPosition(const Alignments &allGlobals, const DetId &id)
edm::ReusableObjectHolder< HostType > holder_