67 : theSaveToDB(p.getUntrackedParameter<bool>(
"saveToDbase")),
68 theSaveFakeScenario(p.getUntrackedParameter<bool>(
"saveFakeScenario")),
69 theScenario(p.getParameter<edm::
ParameterSet>(
"scenario")),
70 theAlignRecordName(
"TrackerAlignmentRcd"),
71 theErrorRecordName(
"TrackerAlignmentErrorExtendedRcd") {
95 std::unique_ptr<TrackerGeometry> theTracker(trackerBuilder.
build(gD, ptitp, ptp, tTopo));
98 auto theAlignableTracker = std::make_unique<AlignableTracker>(&(*theTracker), tTopo);
103 Alignments alignments = *(theAlignableTracker->alignments());
118 throw cms::Exception(
"NotAvailable") <<
"PoolDBOutputService not available";
121 alignmentErrors.clear();
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
const bool theSaveFakeScenario
whether or not writing to DB
Class to update a given geometry with a set of alignments.
TrackerGeometry * build(const GeometricDet *gd, const PTrackerAdditionalParametersPerDet *ptitp, const PTrackerParameters &ptp, const TrackerTopology *tTopo)
~MisalignedTrackerESProducer() override
Destructor.
void applyAlignments(const C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
const std::string theErrorRecordName
MisalignedTrackerESProducer(const edm::ParameterSet &p)
Constructor.
const std::string theAlignRecordName
misalignment scenario
edm::ESGetToken< PTrackerParameters, PTrackerParametersRcd > ptpToken_
Hash writeOneIOV(const T &payload, Time_t time, const std::string &recordName)
Log< level::Info, false > LogInfo
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
edm::ESGetToken< GeometricDet, IdealGeometryRecord > geomDetToken_
const edm::ParameterSet theScenario
if theSaveToDB is true, save a fake scenario (empty alignments), irrespective of the misalignment sce...
cond::Time_t currentTime() const
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > topoToken_
std::unique_ptr< TrackerGeometry > produce(const TrackerDigiGeometryRecord &iRecord)
Produce the misaligned tracker geometry and store it.
Builds a scenario from configuration and applies it to the alignable tracker.
edm::ESGetToken< PTrackerAdditionalParametersPerDet, PTrackerAdditionalParametersPerDetRcd > ptitpToken_