#include <AlignmentProducer.h>
Public Types | |
typedef std::vector< Alignable * > | Alignables |
typedef std::pair< const Trajectory *, const reco::Track * > | ConstTrajTrackPair |
typedef std::vector < ConstTrajTrackPair > | ConstTrajTrackPairCollection |
Public Types inherited from edm::eventsetup::DataProxyProvider | |
typedef std::vector< std::pair < DataKey, boost::shared_ptr < DataProxy > > > | KeyedProxies |
typedef std::vector < EventSetupRecordKey > | Keys |
typedef std::map < EventSetupRecordKey, KeyedProxies > | RecordProxies |
Public Types inherited from edm::EDLooperBase | |
enum | Status { kContinue, kStop } |
Public Member Functions | |
AlignmentProducer (const edm::ParameterSet &iConfig) | |
Constructor. More... | |
virtual void | beginLuminosityBlock (const edm::LuminosityBlock &lumiBlock, const edm::EventSetup &setup) |
Called at lumi block start, calling algorithm's beginLuminosityBlock. More... | |
virtual void | beginOfJob (const edm::EventSetup &) |
Called at beginning of job. More... | |
virtual void | beginRun (const edm::Run &run, const edm::EventSetup &setup) |
Called at run start and calling algorithms beginRun. More... | |
virtual Status | duringLoop (const edm::Event &event, const edm::EventSetup &setup) |
Called at each event. More... | |
virtual void | endLuminosityBlock (const edm::LuminosityBlock &lumiBlock, const edm::EventSetup &setup) |
Called at lumi block end, calling algorithm's endLuminosityBlock. More... | |
virtual void | endOfJob () |
Called at end of job. More... | |
virtual Status | endOfLoop (const edm::EventSetup &, unsigned int iLoop) |
Called at end of loop. More... | |
virtual void | endRun (const edm::Run &run, const edm::EventSetup &setup) |
Called at run end - currently reading TkFittedLasBeam if an InpuTag is given for that. More... | |
virtual boost::shared_ptr < CSCGeometry > | produceCSC (const MuonGeometryRecord &iRecord) |
Produce the muon CSC geometry. More... | |
virtual boost::shared_ptr < DTGeometry > | produceDT (const MuonGeometryRecord &iRecord) |
Produce the muon DT geometry. More... | |
virtual boost::shared_ptr < TrackerGeometry > | produceTracker (const TrackerDigiGeometryRecord &iRecord) |
Produce the tracker geometry. More... | |
virtual void | startingNewLoop (unsigned int iLoop) |
Called at beginning of loop. More... | |
~AlignmentProducer () | |
Destructor. More... | |
Public Member Functions inherited from edm::ESProducerLooper | |
ESProducerLooper () | |
virtual std::set < eventsetup::EventSetupRecordKey > | modifyingRecords () const |
Public Member Functions inherited from edm::ESProducer | |
ESProducer () | |
virtual | ~ESProducer () |
Public Member Functions inherited from edm::ESProxyFactoryProducer | |
ESProxyFactoryProducer () | |
virtual void | newInterval (const eventsetup::EventSetupRecordKey &iRecordType, const ValidityInterval &iInterval) |
overrides DataProxyProvider method More... | |
virtual | ~ESProxyFactoryProducer () |
Public Member Functions inherited from edm::eventsetup::DataProxyProvider | |
DataProxyProvider () | |
const ComponentDescription & | description () const |
bool | isUsingRecord (const EventSetupRecordKey &) const |
const KeyedProxies & | keyedProxies (const EventSetupRecordKey &iRecordKey) const |
void | resetProxies (const EventSetupRecordKey &iRecordType) |
void | resetProxiesIfTransient (const EventSetupRecordKey &iRecordType) |
void | setAppendToDataLabel (const edm::ParameterSet &) |
void | setDescription (const ComponentDescription &iDescription) |
std::set< EventSetupRecordKey > | usingRecords () const |
virtual | ~DataProxyProvider () |
Public Member Functions inherited from edm::EventSetupRecordIntervalFinder | |
const eventsetup::ComponentDescription & | descriptionForFinder () const |
EventSetupRecordIntervalFinder () | |
std::set < eventsetup::EventSetupRecordKey > | findingForRecords () const |
const ValidityInterval & | findIntervalFor (const eventsetup::EventSetupRecordKey &, const IOVSyncValue &) |
void | setDescriptionForFinder (const eventsetup::ComponentDescription &iDescription) |
virtual | ~EventSetupRecordIntervalFinder () |
Public Member Functions inherited from edm::EDLooper | |
EDLooper () | |
virtual | ~EDLooper () |
Public Member Functions inherited from edm::EDLooperBase | |
virtual void | attachTo (ActivityRegistry &) |
Override this method if you need to monitor the state of the processing. More... | |
virtual void | beginOfJob () |
void | copyInfo (ScheduleInfo const &) |
void | doBeginLuminosityBlock (LuminosityBlockPrincipal &, EventSetup const &) |
void | doBeginRun (RunPrincipal &, EventSetup const &) |
Status | doDuringLoop (EventPrincipal &eventPrincipal, EventSetup const &es, ProcessingController &) |
void | doEndLuminosityBlock (LuminosityBlockPrincipal &, EventSetup const &) |
Status | doEndOfLoop (EventSetup const &es) |
void | doEndRun (RunPrincipal &, EventSetup const &) |
void | doStartingNewLoop () |
EDLooperBase () | |
void | prepareForNextLoop (eventsetup::EventSetupProvider *esp) |
void | setActionTable (ActionTable const *actionTable) |
void | setModuleChanger (ModuleChanger const *) |
virtual | ~EDLooperBase () |
Private Member Functions | |
void | addSurveyInfo_ (Alignable *) |
Add survey info to an alignable. More... | |
template<class G , class Rcd , class ErrRcd > | |
void | applyDB (G *geometry, const edm::EventSetup &iSetup, const AlignTransform &globalPosition) const |
template<class G , class DeformationRcd > | |
void | applyDB (G *geometry, const edm::EventSetup &iSetup) const |
Apply DB constants for surface deformations. More... | |
void | createGeometries_ (const edm::EventSetup &) |
Create tracker and muon geometries. More... | |
void | readInSurveyRcds (const edm::EventSetup &) |
read in survey records More... | |
void | simpleMisalignment_ (const Alignables &alivec, const std::string &selection, float shift, float rot, bool local) |
Apply random shifts and rotations to selected alignables, according to configuration. More... | |
void | writeDB (Alignments *alignments, const std::string &alignRcd, AlignmentErrors *alignmentErrors, const std::string &errRcd, const AlignTransform *globalCoordinates) const |
void | writeDB (AlignmentSurfaceDeformations *alignmentSurfaceDeformations, const std::string &surfaceDeformationRcd) const |
Additional Inherited Members | |
Protected Member Functions inherited from edm::ESProducerLooper | |
virtual void | registerFactoryWithKey (const eventsetup::EventSetupRecordKey &iRecord, std::auto_ptr< eventsetup::ProxyFactoryBase > &iFactory, const std::string &iLabel=std::string()) |
void | setIntervalFor (const eventsetup::EventSetupRecordKey &iKey, const IOVSyncValue &iTime, ValidityInterval &oInterval) |
Protected Member Functions inherited from edm::ESProducer | |
template<typename T > | |
void | setWhatProduced (T *iThis, const es::Label &iLabel=es::Label()) |
template<typename T > | |
void | setWhatProduced (T *iThis, const char *iLabel) |
template<typename T > | |
void | setWhatProduced (T *iThis, const std::string &iLabel) |
template<typename T , typename TDecorator > | |
void | setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel=es::Label()) |
template<typename T , typename TReturn , typename TRecord > | |
void | setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel=es::Label()) |
template<typename T , typename TReturn , typename TRecord , typename TArg > | |
void | setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel=es::Label()) |
Protected Member Functions inherited from edm::ESProxyFactoryProducer | |
template<class TFactory > | |
void | registerFactory (std::auto_ptr< TFactory > iFactory, const std::string &iLabel=std::string()) |
virtual void | registerProxies (const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList) |
override DataProxyProvider method More... | |
Protected Member Functions inherited from edm::eventsetup::DataProxyProvider | |
void | eraseAll (const EventSetupRecordKey &iRecordKey) |
deletes all the Proxies in aStream More... | |
void | invalidateProxies (const EventSetupRecordKey &iRecordKey) |
template<class T > | |
void | usingRecord () |
void | usingRecordWithKey (const EventSetupRecordKey &) |
Protected Member Functions inherited from edm::EventSetupRecordIntervalFinder | |
template<class T > | |
void | findingRecord () |
void | findingRecordWithKey (const eventsetup::EventSetupRecordKey &) |
Protected Member Functions inherited from edm::EDLooperBase | |
ModuleChanger const * | moduleChanger () const |
This only returns a non-zero value during the call to endOfLoop. More... | |
ScheduleInfo const * | scheduleInfo () const |
This returns a non-zero value after the constructor has been called. More... | |
Package : Alignment/CommonAlignmentProducer Description : calls alignment algorithms
last update:
by :
Definition at line 54 of file AlignmentProducer.h.
typedef std::vector<Alignable*> AlignmentProducer::Alignables |
Definition at line 58 of file AlignmentProducer.h.
typedef std::pair<const Trajectory*, const reco::Track*> AlignmentProducer::ConstTrajTrackPair |
Definition at line 59 of file AlignmentProducer.h.
typedef std::vector<ConstTrajTrackPair> AlignmentProducer::ConstTrajTrackPairCollection |
Definition at line 60 of file AlignmentProducer.h.
AlignmentProducer::AlignmentProducer | ( | const edm::ParameterSet & | iConfig | ) |
Constructor.
Definition at line 73 of file AlignmentProducer.cc.
References doMuon_, doTracker_, edm::hlt::Exception, reco::get(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), produceCSC(), produceDT(), produceTracker(), edm::ESProducer::setWhatProduced(), theAlignmentAlgo, and theMonitors.
AlignmentProducer::~AlignmentProducer | ( | ) |
Destructor.
Definition at line 132 of file AlignmentProducer.cc.
References globalPositions_, theAlignableExtras, theAlignableMuon, theAlignableTracker, and theAlignmentParameterStore.
|
private |
Add survey info to an alignable.
Definition at line 614 of file AlignmentProducer.cc.
References Alignable::alignableObjectId(), Alignable::components(), error, edm::hlt::Exception, i, Alignable::id(), AlignableSurface::length(), Alignments::m_align, SurveyErrors::m_surveyErrors, SurveyError::matrix(), pos, SurveyError::rawId(), AlignableSurface::setLength(), Alignable::setSurvey(), AlignableSurface::setWidth(), SurveyError::structureType(), Alignable::surface(), theSurveyErrors, theSurveyIndex, theSurveyValues, and AlignableSurface::width().
Referenced by readInSurveyRcds().
|
private |
Apply DB constants belonging to (Err)Rcd to geometry, taking into account 'globalPosition' correction.
Definition at line 713 of file AlignmentProducer.cc.
References GeometryAligner::applyAlignments(), geometry, and edm::EventSetup::get().
|
private |
Apply DB constants for surface deformations.
Definition at line 736 of file AlignmentProducer.cc.
References GeometryAligner::attachSurfaceDeformations(), geometry, and edm::EventSetup::get().
|
virtual |
Called at lumi block start, calling algorithm's beginLuminosityBlock.
Reimplemented from edm::EDLooperBase.
Definition at line 506 of file AlignmentProducer.cc.
References AlignmentAlgorithmBase::beginLuminosityBlock(), and theAlignmentAlgo.
|
virtual |
Called at beginning of job.
Reimplemented from edm::EDLooperBase.
Definition at line 173 of file AlignmentProducer.cc.
References align::AlignableMuon, AlignmentParameterStore_cfi::AlignmentParameterStore, applyDbAlignment_, applyDbDeformations_, MuonScenarioBuilder::applyScenario(), TrackerScenarioBuilder::applyScenario(), createGeometries_(), align::DetectorGlobalPosition(), doMisalignmentScenario_, doMuon_, doTracker_, edm::EventSetup::get(), edm::ParameterSet::getParameter(), globalPositions_, AlignmentAlgorithmBase::initialize(), DetId::Muon, simpleMisalignment_(), stNFixAlignables_, stRandomRotation_, stRandomShift_, theAlignableExtras, theAlignableMuon, theAlignableTracker, theAlignmentAlgo, theAlignmentParameterStore, theMonitors, theMuonCSC, theMuonDT, theParameterSet, theTracker, DetId::Tracker, and useExtras_.
|
virtual |
Called at run start and calling algorithms beginRun.
Reimplemented from edm::EDLooperBase.
Definition at line 481 of file AlignmentProducer.cc.
References AlignmentAlgorithmBase::beginRun(), and theAlignmentAlgo.
|
private |
Create tracker and muon geometries.
Definition at line 590 of file AlignmentProducer.cc.
References TrackerGeomBuilderFromGeometricDet::build(), CSCGeometryBuilderFromDDD::build(), DTGeometryBuilderFromDDD::build(), doMuon_, doTracker_, edm::EventSetup::get(), theMuonCSC, theMuonDT, and theTracker.
Referenced by beginOfJob().
|
virtual |
Called at each event.
Implements edm::EDLooper.
Definition at line 419 of file AlignmentProducer.cc.
References ExpressReco_HICollisions_FallBack::beamSpot, beamSpotTag_, clusterValueMapTag_, edm::InputTag::encode(), ZMuMuCategoriesSequences_cff::eventInfo, edm::Event::getByLabel(), i, edm::EventBase::id(), AlignableExtras::initializeBeamSpot(), edm::EDLooperBase::kContinue, nevent_, readInSurveyRcds(), AlignmentAlgorithmBase::run(), theAlignableExtras, theAlignmentAlgo, theMonitors, and tjTkAssociationMapTag_.
|
virtual |
Called at lumi block end, calling algorithm's endLuminosityBlock.
Reimplemented from edm::EDLooperBase.
Definition at line 513 of file AlignmentProducer.cc.
References AlignmentAlgorithmBase::endLuminosityBlock(), and theAlignmentAlgo.
|
virtual |
Called at end of job.
Reimplemented from edm::EDLooperBase.
Definition at line 284 of file AlignmentProducer.cc.
References AlignableTracker::alignmentErrors(), AlignableTracker::alignments(), AlignableMuon::cscAlignmentErrors(), AlignableMuon::cscAlignments(), align::DetectorGlobalPosition(), doMuon_, doTracker_, AlignableMuon::dtAlignmentErrors(), AlignableMuon::dtAlignments(), AlignableExtras::dump(), globalPositions_, DetId::Muon, nevent_, saveApeToDB_, saveDeformationsToDB_, saveToDB_, Alignable::surfaceDeformations(), theAlignableExtras, theAlignableMuon, theAlignableTracker, theMonitors, DetId::Tracker, and writeDB().
|
virtual |
Called at end of loop.
Implements edm::EDLooperBase.
Definition at line 388 of file AlignmentProducer.cc.
References edm::EDLooperBase::kContinue, edm::EDLooperBase::kStop, nevent_, AlignmentAlgorithmBase::terminate(), theAlignmentAlgo, theMaxLoops, and theMonitors.
|
virtual |
Called at run end - currently reading TkFittedLasBeam if an InpuTag is given for that.
Reimplemented from edm::EDLooperBase.
Definition at line 487 of file AlignmentProducer.cc.
References edm::InputTag::encode(), AlignmentAlgorithmBase::endRun(), edm::Run::getByLabel(), edm::RunBase::id(), theAlignmentAlgo, and tkLasBeamTag_.
|
virtual |
Produce the muon CSC geometry.
Definition at line 164 of file AlignmentProducer.cc.
References theMuonCSC.
Referenced by AlignmentProducer().
|
virtual |
Produce the muon DT geometry.
Definition at line 155 of file AlignmentProducer.cc.
References theMuonDT.
Referenced by AlignmentProducer().
|
virtual |
Produce the tracker geometry.
Definition at line 146 of file AlignmentProducer.cc.
References theTracker.
Referenced by AlignmentProducer().
|
private |
read in survey records
Definition at line 647 of file AlignmentProducer.cc.
References addSurveyInfo_(), edm::ESWatcher< T >::check(), AlignableMuon::CSCEndcaps(), doMuon_, doTracker_, AlignableMuon::DTBarrel(), edm::EventSetup::get(), theAlignableMuon, theAlignableTracker, theSurveyErrors, theSurveyIndex, theSurveyValues, useSurvey_, watchTkSurveyErrRcd_, and watchTkSurveyRcd_.
Referenced by duringLoop().
|
private |
Apply random shifts and rotations to selected alignables, according to configuration.
Definition at line 521 of file AlignmentProducer.cc.
References abs, Alignable::alignmentParameters(), AlignmentParameterSelector::convertParamSel(), RigidBodyAlignmentParameters::dalpha, RigidBodyAlignmentParameters::dbeta, RigidBodyAlignmentParameters::dgamma, RigidBodyAlignmentParameters::dx, RigidBodyAlignmentParameters::dy, RigidBodyAlignmentParameters::dz, edm::hlt::Exception, Alignable::move(), RigidBodyAlignmentParameters::N_PARAM, convertSQLitetoXML_cfg::output, csvReporter::r, random, Alignable::rotateInGlobalFrame(), Alignable::rotateInLocalFrame(), indexGen::s2, AlignmentParameters::selector(), Alignable::surface(), AlignableSurface::toGlobal(), and align::toMatrix().
Referenced by beginOfJob().
|
virtual |
Called at beginning of loop.
Implements edm::EDLooperBase.
Definition at line 346 of file AlignmentProducer.cc.
References AlignableTracker::alignmentErrors(), AlignableTracker::alignments(), GeometryAligner::applyAlignments(), GeometryAligner::attachSurfaceDeformations(), AlignableMuon::cscAlignmentErrors(), AlignableMuon::cscAlignments(), doMuon_, doTracker_, AlignableMuon::dtAlignmentErrors(), AlignableMuon::dtAlignments(), nevent_, AlignmentAlgorithmBase::startNewLoop(), Alignable::surfaceDeformations(), theAlignableMuon, theAlignableTracker, theAlignmentAlgo, and theMonitors.
|
private |
Write alignment and/or errors to DB for record names (removes *globalCoordinates before writing if non-null...). Takes over ownership of alignments and alignmentErrrors.
Definition at line 749 of file AlignmentProducer.cc.
References cond::service::PoolDBOutputService::beginOfTime(), edm::hlt::Exception, edm::Service< T >::isAvailable(), GeometryAligner::removeGlobalTransform(), saveApeToDB_, saveToDB_, AlignTransform::transform(), and cond::service::PoolDBOutputService::writeOne().
Referenced by endOfJob().
|
private |
Write surface deformations (bows & kinks) to DB for given record name Takes over ownership of alignmentsurfaceDeformations.
Definition at line 802 of file AlignmentProducer.cc.
References cond::service::PoolDBOutputService::beginOfTime(), edm::hlt::Exception, edm::Service< T >::isAvailable(), saveDeformationsToDB_, and cond::service::PoolDBOutputService::writeOne().
|
private |
Definition at line 167 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 167 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 174 of file AlignmentProducer.h.
Referenced by duringLoop().
|
private |
Definition at line 176 of file AlignmentProducer.h.
Referenced by duringLoop().
|
private |
Definition at line 167 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 169 of file AlignmentProducer.h.
Referenced by AlignmentProducer(), beginOfJob(), createGeometries_(), endOfJob(), readInSurveyRcds(), and startingNewLoop().
|
private |
Definition at line 169 of file AlignmentProducer.h.
Referenced by AlignmentProducer(), beginOfJob(), createGeometries_(), endOfJob(), readInSurveyRcds(), and startingNewLoop().
|
private |
GlobalPositions that might be read from DB, NULL otherwise.
Definition at line 156 of file AlignmentProducer.h.
Referenced by beginOfJob(), endOfJob(), and ~AlignmentProducer().
|
private |
Definition at line 158 of file AlignmentProducer.h.
Referenced by duringLoop(), endOfJob(), endOfLoop(), and startingNewLoop().
|
private |
Definition at line 168 of file AlignmentProducer.h.
Referenced by endOfJob(), and writeDB().
|
private |
Definition at line 168 of file AlignmentProducer.h.
Referenced by endOfJob(), and writeDB().
|
private |
Definition at line 168 of file AlignmentProducer.h.
Referenced by endOfJob(), and writeDB().
|
private |
Definition at line 165 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 166 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 166 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 148 of file AlignmentProducer.h.
Referenced by beginOfJob(), duringLoop(), endOfJob(), and ~AlignmentProducer().
|
private |
Definition at line 150 of file AlignmentProducer.h.
Referenced by beginOfJob(), endOfJob(), readInSurveyRcds(), startingNewLoop(), and ~AlignmentProducer().
|
private |
Definition at line 149 of file AlignmentProducer.h.
Referenced by beginOfJob(), endOfJob(), readInSurveyRcds(), startingNewLoop(), and ~AlignmentProducer().
|
private |
Definition at line 144 of file AlignmentProducer.h.
Referenced by AlignmentProducer(), beginLuminosityBlock(), beginOfJob(), beginRun(), duringLoop(), endLuminosityBlock(), endOfLoop(), endRun(), and startingNewLoop().
|
private |
Definition at line 146 of file AlignmentProducer.h.
Referenced by beginOfJob(), and ~AlignmentProducer().
|
private |
Definition at line 163 of file AlignmentProducer.h.
Referenced by endOfLoop().
|
private |
Definition at line 145 of file AlignmentProducer.h.
Referenced by AlignmentProducer(), beginOfJob(), duringLoop(), endOfJob(), endOfLoop(), and startingNewLoop().
|
private |
Definition at line 154 of file AlignmentProducer.h.
Referenced by beginOfJob(), createGeometries_(), and produceCSC().
|
private |
Definition at line 153 of file AlignmentProducer.h.
Referenced by beginOfJob(), createGeometries_(), and produceDT().
|
private |
Definition at line 159 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 142 of file AlignmentProducer.h.
Referenced by addSurveyInfo_(), and readInSurveyRcds().
|
private |
Definition at line 140 of file AlignmentProducer.h.
Referenced by addSurveyInfo_(), and readInSurveyRcds().
|
private |
Definition at line 141 of file AlignmentProducer.h.
Referenced by addSurveyInfo_(), and readInSurveyRcds().
|
private |
Definition at line 152 of file AlignmentProducer.h.
Referenced by beginOfJob(), createGeometries_(), and produceTracker().
|
private |
Definition at line 173 of file AlignmentProducer.h.
Referenced by duringLoop().
|
private |
Definition at line 175 of file AlignmentProducer.h.
Referenced by endRun().
|
private |
Definition at line 169 of file AlignmentProducer.h.
Referenced by beginOfJob().
|
private |
Definition at line 170 of file AlignmentProducer.h.
Referenced by readInSurveyRcds().
|
private |
Definition at line 185 of file AlignmentProducer.h.
|
private |
Definition at line 184 of file AlignmentProducer.h.
|
private |
Definition at line 183 of file AlignmentProducer.h.
|
private |
Definition at line 182 of file AlignmentProducer.h.
|
private |
Definition at line 181 of file AlignmentProducer.h.
Referenced by readInSurveyRcds().
|
private |
Definition at line 180 of file AlignmentProducer.h.
Referenced by readInSurveyRcds().