27 #include <boost/shared_ptr.hpp>
68 theSaveToDB(p.getUntrackedParameter<bool>(
"saveToDbase")),
69 theSaveFakeScenario(p.getUntrackedParameter<bool>(
"saveFakeScenario")),
70 theScenario(p.getParameter<edm::
ParameterSet>(
"scenario")),
71 theAlignRecordName(
"TrackerAlignmentRcd"),
72 theErrorRecordName(
"TrackerAlignmentErrorExtendedRcd")
84 boost::shared_ptr<TrackerGeometry>
100 theTracker = boost::shared_ptr<TrackerGeometry>( trackerBuilder.
build(&(*gD), *ptp ));
108 Alignments* alignments = theAlignableTracker->alignments();
122 throw cms::Exception(
"NotAvailable") <<
"PoolDBOutputService not available";
125 alignmentErrors->clear();
135 delete alignmentErrors;
const bool theSaveFakeScenario
whether or not writing to DB
Class to update a given geometry with a set of alignments.
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
const DepRecordT & getRecord() const
const std::string theErrorRecordName
MisalignedTrackerESProducer(const edm::ParameterSet &p)
Constructor.
const std::string theAlignRecordName
misalignment scenario
void writeOne(T *payload, Time_t time, const std::string &recordName, bool withlogging=false)
void applyScenario(const edm::ParameterSet &scenario)
Apply misalignment scenario to the tracker.
void applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
boost::shared_ptr< TrackerGeometry > produce(const TrackerDigiGeometryRecord &iRecord)
Produce the misaligned tracker geometry and store it.
T const * product() const
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
boost::shared_ptr< TrackerGeometry > theTracker
TrackerGeometry * build(const GeometricDet *gd, const PTrackerParameters &ptp)
const edm::ParameterSet theScenario
if theSaveToDB is true, save a fake scenario (empty alignments), irrespective of the misalignment sce...
cond::Time_t currentTime() const
Builds a scenario from configuration and applies it to the alignable tracker.
virtual ~MisalignedTrackerESProducer()
Destructor.