114 auto theDTGeometry = std::make_unique<DTGeometry>();
115 DTGeometryBuilder.
build(*theDTGeometry, &(*cpv), *mdc);
116 auto theCSCGeometry = std::make_unique<CSCGeometry>();
117 CSCGeometryBuilder.
build(*theCSCGeometry, &(*cpv), *mdc);
161 throw cms::Exception(
"NotAvailable") <<
"PoolDBOutputService not available";
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
std::string theCSCErrorRecordName
Builds a scenario from configuration and applies it to the alignable Muon.
void saveToDB()
Save alignemnts and error to database.
Class to update a given geometry with a set of alignments.
std::string theDTAlignRecordName
misalignment scenario
AlignmentErrorsExtended * dt_AlignmentErrorsExtended
ESProducts< std::remove_reference_t< TArgs >... > products(TArgs &&...args)
Alignments * dtAlignments()
Get DT alignments sorted by DetId.
Alignments * dt_Alignments
void build(CSCGeometry &geom, const DDCompactView *fv, const MuonDDDConstants &muonConstants)
Build the geometry.
AlignmentErrorsExtended * csc_AlignmentErrorsExtended
void build(DTGeometry &theGeometry, const DDCompactView *cview, const MuonDDDConstants &muonConstants)
const DepRecordT getRecord() const
cond::Time_t beginOfTime() const
Alignments * csc_Alignments
void writeOne(T *payload, Time_t time, const std::string &recordName, bool withlogging=false)
AlignmentErrorsExtended * cscAlignmentErrorsExtended()
Get CSC alignment errors sorted by DetId.
void applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
std::string theCSCAlignRecordName
Alignments * cscAlignments()
Get CSC alignments sorted by DetId.
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
AlignmentErrorsExtended * dtAlignmentErrorsExtended()
Get DT alignment errors sorted by DetId.
MisalignedMuonESProducer(const edm::ParameterSet &p)
Constructor.
void applyScenario(const edm::ParameterSet &scenario) override
Apply misalignment scenario to the Muon.
edm::ESProducts< std::unique_ptr< DTGeometry >, std::unique_ptr< CSCGeometry > > produce(const MuonGeometryRecord &)
Produce the misaligned Muon geometry and store it.
const edm::ParameterSet theScenario
whether or not writing to DB
Constructor of the full muon geometry.
std::string theDTErrorRecordName
~MisalignedMuonESProducer() override
Destructor.