26 #include <boost/shared_ptr.hpp>
68 theSaveToDB(p.getUntrackedParameter<bool>(
"saveToDbase")),
69 theScenario(p.getParameter<edm::
ParameterSet>(
"scenario")),
70 theAlignRecordName(
"TrackerAlignmentRcd"),
71 theErrorRecordName(
"TrackerAlignmentErrorRcd")
84 boost::shared_ptr<TrackerGeometry>
94 theTracker = boost::shared_ptr<TrackerGeometry>( trackerBuilder.
build(&(*gD)) );
102 Alignments* alignments = theAlignableTracker->alignments();
103 AlignmentErrors* alignmentErrors = theAlignableTracker->alignmentErrors();
116 throw cms::Exception(
"NotAvailable") <<
"PoolDBOutputService not available";
126 delete alignmentErrors;
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 applyAlignments(C *geometry, const Alignments *alignments, const AlignmentErrors *alignmentErrors, const AlignTransform &globalCoordinates)
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.
boost::shared_ptr< TrackerGeometry > produce(const TrackerDigiGeometryRecord &iRecord)
Produce the misaligned tracker geometry and store it.
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
TrackerGeometry * build(const GeometricDet *gd)
boost::shared_ptr< TrackerGeometry > theTracker
const edm::ParameterSet theScenario
whether or not writing to DB
cond::Time_t currentTime() const
Builds a scenario from configuration and applies it to the alignable tracker.
virtual ~MisalignedTrackerESProducer()
Destructor.