66 : theSaveToDB(
p.getUntrackedParameter<
bool>(
"saveToDbase")),
67 theSaveFakeScenario(
p.getUntrackedParameter<
bool>(
"saveFakeScenario")),
69 theAlignRecordName(
"TrackerAlignmentRcd"),
70 theErrorRecordName(
"TrackerAlignmentErrorExtendedRcd") {
92 std::unique_ptr<TrackerGeometry> theTracker(trackerBuilder.
build(gD, ptp, tTopo));
95 auto theAlignableTracker = std::make_unique<AlignableTracker>(&(*theTracker), tTopo);
100 Alignments alignments = *(theAlignableTracker->alignments());
115 throw cms::Exception(
"NotAvailable") <<
"PoolDBOutputService not available";
118 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.
uint32_t cc[maxCellsPerHit]
TrackerGeometry * build(const GeometricDet *gd, const PTrackerParameters &ptp, const TrackerTopology *tTopo)
~MisalignedTrackerESProducer() override
Destructor.
void applyAlignments(const C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
const std::string theErrorRecordName
cond::Time_t currentTime() const
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)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Log< level::Info, false > LogInfo
edm::ESGetToken< GeometricDet, IdealGeometryRecord > geomDetToken_
const edm::ParameterSet theScenario
if theSaveToDB is true, save a fake scenario (empty alignments), irrespective of the misalignment sce...
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > topoToken_
std::unique_ptr< TrackerGeometry > produce(const TrackerDigiGeometryRecord &iRecord)
Produce the misaligned tracker geometry and store it.
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
Builds a scenario from configuration and applies it to the alignable tracker.