CMS 3D CMS Logo

AlignmentProducerBase.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignmentProducer_AlignmentProducerBase_h
2 #define Alignment_CommonAlignmentProducer_AlignmentProducerBase_h
3 
25 #include <memory>
26 
30 
49 
54 
64 
66 
67 class AlignTransform;
68 class Alignments;
71 struct SurveyErrors;
72 class TrackerTopology;
74 
76 protected:
78 
79  // 'noexcept(false)' is needed currently for multiple inheritance with Framework modules
80  virtual ~AlignmentProducerBase() noexcept(false);
81 
82  /*** Methods used in implementation of derived classes ***/
84  void startProcessing();
85 
87  void terminateProcessing(const edm::EventSetup* = nullptr);
88 
90  bool processEvent(const edm::Event&, const edm::EventSetup&);
91 
93  void beginRunImpl(const edm::Run&, const edm::EventSetup&);
94 
96  void endRunImpl(const edm::Run&, const edm::EventSetup&);
97 
100 
103 
104  int nEvent() const { return nevent_; }
105 
108  void initAlignmentAlgorithm(const edm::EventSetup&, bool update = false);
109 
112  bool finish();
113 
115  virtual bool getBeamSpot(const edm::Event&, edm::Handle<reco::BeamSpot>&) = 0;
119 
120  std::shared_ptr<TrackerGeometry> trackerGeometry_;
125 
128 
131 
134 
137 
138 private:
141 
144 
146  void createCalibrations();
147 
149  bool setupChanged(const edm::EventSetup&);
150 
152  void initBeamSpot(const edm::Event&);
153 
155  void createGeometries(const edm::EventSetup&, const TrackerTopology*);
156 
160 
163  void createAlignables(const TrackerTopology*, bool update = false);
164 
166  void buildParameterStore();
167 
169  void applyMisalignment();
170 
172  void simpleMisalignment(const align::Alignables&, const std::string&, float, float, bool);
173 
177 
180  template <class G, class Rcd, class ErrRcd>
181  void applyDB(const G*,
182  const edm::EventSetup&,
185  const AlignTransform&) const;
186 
188  template <class G, class DeformationRcd>
189  void applyDB(const G*,
190  const edm::EventSetup&,
192 
194  void readInSurveyRcds(const edm::EventSetup&);
195 
197  void addSurveyInfo(Alignable*);
198 
200  void storeAlignmentsToDB();
201 
205 
209  void writeDB(Alignments*,
210  const std::string&,
212  const std::string&,
213  const AlignTransform*,
214  cond::Time_t) const;
215 
219 
220  //========================== PRIVATE DATA ====================================
221  //============================================================================
222 
223  /*** Alignment data ***/
224 
225  std::unique_ptr<AlignmentAlgorithmBase> alignmentAlgo_;
228 
229  std::unique_ptr<AlignmentParameterStore> alignmentParameterStore_;
230  std::unique_ptr<AlignableTracker> alignableTracker_;
231  std::unique_ptr<AlignableMuon> alignableMuon_;
232  std::unique_ptr<AlignableExtras> alignableExtras_;
233 
236  std::unique_ptr<const Alignments> globalPositions_;
237 
239  int nevent_{0};
240  bool runAtPCL_{false};
241 
242  /*** Parameters from config-file ***/
243 
245 
246  const int stNFixAlignables_;
251  const bool useSurvey_;
253 
254  /*** ESTokens ***/
262 
272 
280 
281  /*** ESWatcher ***/
282 
285 
289 
294 
301 
302  /*** Survey stuff ***/
303 
304  size_t surveyIndex_{0};
305  const Alignments* surveyValues_{nullptr};
306  const SurveyErrors* surveyErrors_{nullptr};
307 
308  /*** Status flags ***/
309  bool isAlgoInitialized_{false};
310  bool isDuringLoop_{false}; // -> needed to ensure correct behaviour in
311  // both, EDLooper and standard framework
312  // modules
314 };
315 
316 template <class G, class Rcd, class ErrRcd>
318  const edm::EventSetup& iSetup,
319  const edm::ESGetToken<Alignments, Rcd>& aliToken,
321  const AlignTransform& globalCoordinates) const {
322  // 'G' is the geometry class for that DB should be applied,
323  // 'Rcd' is the record class for its Alignments
324  // 'ErrRcd' is the record class for its AlignmentErrorsExtended
325  // 'globalCoordinates' are global transformation for this geometry
326 
327  const Rcd& record = iSetup.get<Rcd>();
329  const edm::ValidityInterval& validity = record.validityInterval();
330  const edm::IOVSyncValue first = validity.first();
331  const edm::IOVSyncValue last = validity.last();
333  throw cms::Exception("DatabaseError")
334  << "@SUB=AlignmentProducerBase::applyDB"
335  << "\nTrying to apply " << record.key().name() << " with multiple IOVs in tag.\n"
336  << "Validity range is " << first.eventID().run() << " - " << last.eventID().run();
337  }
338  }
339 
340  const Alignments* alignments = &record.get(aliToken);
341  const AlignmentErrorsExtended* alignmentErrors = &iSetup.getData(errToken);
342 
343  GeometryAligner aligner;
344  aligner.applyAlignments<G>(geometry, alignments, alignmentErrors, globalCoordinates);
345 }
346 
347 template <class G, class DeformationRcd>
349  const G* geometry,
350  const edm::EventSetup& iSetup,
352  // 'G' is the geometry class for that DB should be applied,
353  // 'DeformationRcd' is the record class for its surface deformations
354 
355  const DeformationRcd& record = iSetup.get<DeformationRcd>();
357  const edm::ValidityInterval& validity = record.validityInterval();
358  const edm::IOVSyncValue first = validity.first();
359  const edm::IOVSyncValue last = validity.last();
361  throw cms::Exception("DatabaseError")
362  << "@SUB=AlignmentProducerBase::applyDB"
363  << "\nTrying to apply " << record.key().name() << " with multiple IOVs in tag.\n"
364  << "Validity range is " << first.eventID().run() << " - " << last.eventID().run();
365  }
366  }
367  const AlignmentSurfaceDeformations* surfaceDeformations = &record.get(surfDefToken);
368 
369  GeometryAligner aligner;
370  aligner.attachSurfaceDeformations<G>(geometry, surfaceDeformations);
371 }
372 
373 #endif /* Alignment_CommonAlignmentProducer_AlignmentProducerBase_h */
AlignmentProducerBase::dtGeomToken_
const edm::ESGetToken< DTGeometry, MuonGeometryRecord > dtGeomToken_
Definition: AlignmentProducerBase.h:259
AlignmentProducerBase::nevent_
int nevent_
Definition: AlignmentProducerBase.h:239
AlignmentProducerBase::initAlignmentAlgorithm
void initAlignmentAlgorithm(const edm::EventSetup &, bool update=false)
Definition: AlignmentProducerBase.cc:361
AlignmentProducerBase::gemGeomToken_
const edm::ESGetToken< GEMGeometry, MuonGeometryRecord > gemGeomToken_
Definition: AlignmentProducerBase.h:261
GlobalPositionRcd.h
AlignmentProducerBase::muonDTGeometry_
edm::ESHandle< DTGeometry > muonDTGeometry_
Definition: AlignmentProducerBase.h:121
AlignmentProducerBase::beginLuminosityBlockImpl
void beginLuminosityBlockImpl(const edm::LuminosityBlock &, const edm::EventSetup &)
begin lumi block
Definition: AlignmentProducerBase.cc:267
AlignmentProducerBase::createGeometries
void createGeometries(const edm::EventSetup &, const TrackerTopology *)
Creates ideal geometry @trackerGeometry_ from IdealGeometryRecord.
Definition: AlignmentProducerBase.cc:430
AlignmentProducerBase::watchDTSurveyErrExtRcd_
edm::ESWatcher< DTSurveyErrorExtendedRcd > watchDTSurveyErrExtRcd_
Definition: AlignmentProducerBase.h:298
AlignmentProducerBase::alignableMuon_
std::unique_ptr< AlignableMuon > alignableMuon_
Definition: AlignmentProducerBase.h:231
AlignmentProducerBase::applyDB
void applyDB(const G *, const edm::EventSetup &, const edm::ESGetToken< Alignments, Rcd > &, const edm::ESGetToken< AlignmentErrorsExtended, ErrRcd > &, const AlignTransform &) const
Definition: AlignmentProducerBase.h:317
TrackerGeometry.h
AlignmentProducerBase::watchCSCSurveyErrExtRcd_
edm::ESWatcher< CSCSurveyErrorExtendedRcd > watchCSCSurveyErrExtRcd_
Definition: AlignmentProducerBase.h:300
AlignmentProducerBase::endRunImpl
void endRunImpl(const edm::Run &, const edm::EventSetup &)
end run
Definition: AlignmentProducerBase.cc:251
edm::ESWatcher< IdealGeometryRecord >
ESHandle.h
AlignmentProducerBase::watchDTAlErrExtRcd_
edm::ESWatcher< DTAlignmentErrorExtendedRcd > watchDTAlErrExtRcd_
Definition: AlignmentProducerBase.h:291
AlignmentProducerBase::applyMisalignment
void applyMisalignment()
Applies misalignment scenario to @alignableTracker_.
Definition: AlignmentProducerBase.cc:548
AlignmentProducerBase::watchCSCSurveyRcd_
edm::ESWatcher< CSCSurveyRcd > watchCSCSurveyRcd_
Definition: AlignmentProducerBase.h:299
AlignmentProducerBase::endLuminosityBlockImpl
void endLuminosityBlockImpl(const edm::LuminosityBlock &, const edm::EventSetup &)
end lumi block
Definition: AlignmentProducerBase.cc:273
AlignmentProducerBase::tkSurvErrorToken_
const edm::ESGetToken< SurveyErrors, TrackerSurveyErrorExtendedRcd > tkSurvErrorToken_
Definition: AlignmentProducerBase.h:275
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
AlignmentProducerBase::alignableExtras_
std::unique_ptr< AlignableExtras > alignableExtras_
Definition: AlignmentProducerBase.h:232
edm::Run
Definition: Run.h:45
DTAlignmentErrorExtendedRcd.h
AlignmentProducerBase::nEvent
int nEvent() const
Definition: AlignmentProducerBase.h:104
TrackerTopology
Definition: TrackerTopology.h:16
Time.h
AlignmentProducerBase::watchDTAlRcd_
edm::ESWatcher< DTAlignmentRcd > watchDTAlRcd_
Definition: AlignmentProducerBase.h:290
Alignable
Definition: Alignable.h:27
geometry
Definition: geometry.py:1
AlignmentProducerBase::createAlignmentAlgorithm
void createAlignmentAlgorithm(edm::ConsumesCollector &)
Creates the choosen alignment algorithm.
Definition: AlignmentProducerBase.cc:279
edm::ValidityInterval::last
const IOVSyncValue & last() const
Definition: ValidityInterval.h:38
edm::ValidityInterval
Definition: ValidityInterval.h:28
Alignments.h
AlignmentProducerBase::useSurvey_
const bool useSurvey_
Definition: AlignmentProducerBase.h:251
AlignmentProducerBase::simpleMisalignment
void simpleMisalignment(const align::Alignables &, const std::string &, float, float, bool)
Applies misalignment scenario to @alignableTracker_.
Definition: AlignmentProducerBase.cc:579
AlignmentProducerBase::watchTrackerAlErrorExtRcd_
edm::ESWatcher< TrackerAlignmentErrorExtendedRcd > watchTrackerAlErrorExtRcd_
Definition: AlignmentProducerBase.h:287
AlignmentProducerBase::cscAliToken_
const edm::ESGetToken< Alignments, CSCAlignmentRcd > cscAliToken_
Definition: AlignmentProducerBase.h:265
edm::ValidityInterval::first
const IOVSyncValue & first() const
Definition: ValidityInterval.h:37
relativeConstraints.geometry
geometry
Definition: relativeConstraints.py:39
PTrackerAdditionalParametersPerDetRcd.h
PTrackerParameters.h
AlignmentProducerBase::surveyValues_
const Alignments * surveyValues_
Definition: AlignmentProducerBase.h:305
CSCSurveyRcd.h
AlignmentProducerBase::tkAliErrToken_
const edm::ESGetToken< AlignmentErrorsExtended, TrackerAlignmentErrorExtendedRcd > tkAliErrToken_
Definition: AlignmentProducerBase.h:267
AlignmentProducerBase::isDuringLoop_
bool isDuringLoop_
Definition: AlignmentProducerBase.h:310
AlignmentProducerBase::doMisalignmentScenario_
const bool doMisalignmentScenario_
Definition: AlignmentProducerBase.h:249
edm::Handle
Definition: AssociativeIterator.h:50
AlignmentProducerBase::geomDetToken_
const edm::ESGetToken< GeometricDet, IdealGeometryRecord > geomDetToken_
Definition: AlignmentProducerBase.h:256
AlignmentProducerBase::isAlgoInitialized_
bool isAlgoInitialized_
Definition: AlignmentProducerBase.h:309
GeometryAligner::applyAlignments
void applyAlignments(const C *geometry, const Alignments *alignments, const AlignmentErrorsExtended *alignmentErrors, const AlignTransform &globalCoordinates)
Definition: GeometryAligner.h:52
TrackerSurfaceDeformationRcd.h
AlignmentProducerBase::ptpToken_
const edm::ESGetToken< PTrackerParameters, PTrackerParametersRcd > ptpToken_
Definition: AlignmentProducerBase.h:257
DTSurveyErrorExtendedRcd.h
AlignmentProducerBase::getBeamSpot
virtual bool getBeamSpot(const edm::Event &, edm::Handle< reco::BeamSpot > &)=0
AlignmentProducerBase::dtSurvErrorToken_
const edm::ESGetToken< SurveyErrors, DTSurveyErrorExtendedRcd > dtSurvErrorToken_
Definition: AlignmentProducerBase.h:277
AlignmentProducerBase::uniqueRunRanges_
const align::RunRanges uniqueRunRanges_
Definition: AlignmentProducerBase.h:238
TrackerAlignmentErrorExtendedRcd.h
SurveyErrors
Definition: SurveyErrors.h:19
AlignmentProducerBase::beamSpotTag_
const edm::InputTag beamSpotTag_
BeamSpot.
Definition: AlignmentProducerBase.h:130
CSCSurveyErrorExtendedRcd.h
AlignmentProducerBase::trackerGeometry_
std::shared_ptr< TrackerGeometry > trackerGeometry_
Definition: AlignmentProducerBase.h:120
AlignmentProducerBase::gemAliErrToken_
const edm::ESGetToken< AlignmentErrorsExtended, GEMAlignmentErrorExtendedRcd > gemAliErrToken_
Definition: AlignmentProducerBase.h:270
AlignmentProducerBase::tjTkAssociationMapTag_
const edm::InputTag tjTkAssociationMapTag_
Map with tracks/trajectories.
Definition: AlignmentProducerBase.h:127
dqmdumpme.last
last
Definition: dqmdumpme.py:56
AlignmentProducerBase::ttopoToken_
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > ttopoToken_
Definition: AlignmentProducerBase.h:255
cond::timeTypeSpecs
const TimeTypeSpecs timeTypeSpecs[]
Definition: Time.cc:16
TrackerTopologyRcd.h
AlignmentProducerBase::beamSpot_
edm::Handle< reco::BeamSpot > beamSpot_
Definition: AlignmentProducerBase.h:234
edm::EventSetup::get
T get() const
Definition: EventSetup.h:87
AlignmentProducerBase::surveyIndex_
size_t surveyIndex_
Definition: AlignmentProducerBase.h:304
AlignmentProducerBase::writeForRunRange
void writeForRunRange(cond::Time_t)
Definition: AlignmentProducerBase.cc:847
AlignmentProducerBase::watchTkSurveyErrExtRcd_
edm::ESWatcher< TrackerSurveyErrorExtendedRcd > watchTkSurveyErrExtRcd_
Definition: AlignmentProducerBase.h:296
AlignmentProducerBase::addSurveyInfo
void addSurveyInfo(Alignable *)
Adds survey info to an Alignable.
Definition: AlignmentProducerBase.cc:744
CSCAlignmentErrorExtendedRcd.h
AlignmentProducerBase::tkSurveyToken_
const edm::ESGetToken< Alignments, TrackerSurveyRcd > tkSurveyToken_
Definition: AlignmentProducerBase.h:274
AlignmentProducerBase::AlignmentProducerBase
AlignmentProducerBase(const edm::ParameterSet &, edm::ConsumesCollector)
Definition: AlignmentProducerBase.cc:28
TrackerDigiGeometryRecord
Definition: TrackerDigiGeometryRecord.h:16
AlignmentProducerBase::watchIdealGeometryRcd_
edm::ESWatcher< IdealGeometryRecord > watchIdealGeometryRcd_
Definition: AlignmentProducerBase.h:283
AlignmentProducerBase::muonCSCGeometry_
edm::ESHandle< CSCGeometry > muonCSCGeometry_
Definition: AlignmentProducerBase.h:122
edm::ESHandle< DTGeometry >
AlignmentProducerBase::calibrations_
CalibrationsOwner calibrations_
Definition: AlignmentProducerBase.h:226
AlignmentProducerBase::checkDbAlignmentValidity_
const bool checkDbAlignmentValidity_
Definition: AlignmentProducerBase.h:248
AlignmentProducerBase::getTrajTrackAssociationCollection
virtual bool getTrajTrackAssociationCollection(const edm::Event &, edm::Handle< TrajTrackAssociationCollection > &)=0
AlignmentProducerBase::saveApeToDB_
const bool saveApeToDB_
Definition: AlignmentProducerBase.h:250
AlignmentProducerBase::applyDbAlignment_
const bool applyDbAlignment_
Definition: AlignmentProducerBase.h:248
AlignmentProducerBase::dtAliErrToken_
const edm::ESGetToken< AlignmentErrorsExtended, DTAlignmentErrorExtendedRcd > dtAliErrToken_
Definition: AlignmentProducerBase.h:268
AlignmentProducerBase::watchTrackerAlRcd_
edm::ESWatcher< TrackerAlignmentRcd > watchTrackerAlRcd_
Definition: AlignmentProducerBase.h:286
AlignmentProducerBase
Definition: AlignmentProducerBase.h:75
AlignmentProducerBase::stNFixAlignables_
const int stNFixAlignables_
Definition: AlignmentProducerBase.h:246
TrajTrackAssociation.h
AlignmentProducerBase::finish
bool finish()
Definition: AlignmentProducerBase.cc:772
first
auto first
Definition: CAHitNtupletGeneratorKernelsImpl.h:125
CalibrationsOwner
std::vector< std::unique_ptr< IntegratedCalibrationBase > > CalibrationsOwner
Definition: AlignmentAlgorithmBase.h:56
edm::IOVSyncValue
Definition: IOVSyncValue.h:31
AlignmentProducerBase::doTracker_
const bool doTracker_
Definition: AlignmentProducerBase.h:124
AlignTransform
Definition: AlignTransform.h:15
DTGeometry.h
AlignmentProducerBase::cscSurveyToken_
const edm::ESGetToken< Alignments, CSCSurveyRcd > cscSurveyToken_
Definition: AlignmentProducerBase.h:278
AlignmentProducerBase::createAlignables
void createAlignables(const TrackerTopology *, bool update=false)
Definition: AlignmentProducerBase.cc:493
AlignmentProducerBase::watchCSCAlRcd_
edm::ESWatcher< CSCAlignmentRcd > watchCSCAlRcd_
Definition: AlignmentProducerBase.h:292
AlignmentProducerBase::processEvent
bool processEvent(const edm::Event &, const edm::EventSetup &)
Process event.
Definition: AlignmentProducerBase.cc:153
AlignmentProducerBase::alignmentAlgo_
std::unique_ptr< AlignmentAlgorithmBase > alignmentAlgo_
Definition: AlignmentProducerBase.h:225
edm::ParameterSet
Definition: ParameterSet.h:47
AlignmentProducerBase::alignableTracker_
std::unique_ptr< AlignableTracker > alignableTracker_
Definition: AlignmentProducerBase.h:230
AlignmentProducerBase::doMuon_
const bool doMuon_
Definition: AlignmentProducerBase.h:124
AlignmentProducerBase::tkSurfDefToken_
const edm::ESGetToken< AlignmentSurfaceDeformations, TrackerSurfaceDeformationRcd > tkSurfDefToken_
Definition: AlignmentProducerBase.h:271
TrackerSurveyRcd.h
AlignmentMonitors
std::vector< std::unique_ptr< AlignmentMonitorBase > > AlignmentMonitors
Definition: AlignmentMonitorBase.h:136
AlignmentProducerBase::storeAlignmentsToDB
void storeAlignmentsToDB()
Writes Alignments (i.e. Records) to database-file.
Definition: AlignmentProducerBase.cc:797
edm::IOVSyncValue::endOfTime
static const IOVSyncValue & endOfTime()
Definition: IOVSyncValue.cc:82
AlignmentProducerBase::createCalibrations
void createCalibrations()
Creates the calibrations.
Definition: AlignmentProducerBase.cc:300
AlignmentProducerBase::getTkFittedLasBeamCollection
virtual bool getTkFittedLasBeamCollection(const edm::Run &, edm::Handle< TkFittedLasBeamCollection > &)=0
AlignmentMonitorBase.h
cond::runnumber
Definition: Time.h:19
AlignmentProducerBase::terminateProcessing
void terminateProcessing(const edm::EventSetup *=nullptr)
Terminate processing of events.
Definition: AlignmentProducerBase.cc:131
AlignmentProducerBase::tkAliToken_
const edm::ESGetToken< Alignments, TrackerAlignmentRcd > tkAliToken_
Definition: AlignmentProducerBase.h:263
cond::Time_t
unsigned long long Time_t
Definition: Time.h:14
AlignmentProducerBase::muonGEMGeometry_
edm::ESHandle< GEMGeometry > muonGEMGeometry_
Definition: AlignmentProducerBase.h:123
AlignmentProducerBase::buildParameterStore
void buildParameterStore()
Creates the @alignmentParameterStore_, which manages all Alignables.
Definition: AlignmentProducerBase.cc:520
cond::TimeTypeSpecs::endValue
Time_t endValue
Definition: Time.h:42
AlignmentProducerBase::readInSurveyRcds
void readInSurveyRcds(const edm::EventSetup &)
Reads in survey records.
Definition: AlignmentProducerBase.cc:695
AlignmentProducerBase::enableAlignableUpdates_
const bool enableAlignableUpdates_
Definition: AlignmentProducerBase.h:252
AlignmentSurfaceDeformations
Definition: AlignmentSurfaceDeformations.h:20
Utilities.h
AlignmentProducerBase::applyAlignmentsToGeometry
void applyAlignmentsToGeometry()
Definition: AlignmentProducerBase.cc:653
DTAlignmentRcd.h
IdealGeometryRecord.h
AlignmentProducerBase::runAtPCL_
bool runAtPCL_
Definition: AlignmentProducerBase.h:240
TrackerAlignmentRcd.h
edm::EventSetup
Definition: EventSetup.h:58
AlCaHarvesting_cff.record
record
Definition: AlCaHarvesting_cff.py:42
AlignmentProducerBase::watchTrackerSurDeRcd_
edm::ESWatcher< TrackerSurfaceDeformationRcd > watchTrackerSurDeRcd_
Definition: AlignmentProducerBase.h:288
AlignmentProducerBase::setupChanged
bool setupChanged(const edm::EventSetup &)
Checks if one of the EventSetup-Records has changed.
Definition: AlignmentProducerBase.cc:309
AlignmentProducerBase::monitors_
AlignmentMonitors monitors_
Definition: AlignmentProducerBase.h:227
AlignmentProducerBase::tkLasBeamTag_
const edm::InputTag tkLasBeamTag_
LAS beams in edm::Run (ignore if empty)
Definition: AlignmentProducerBase.h:133
AlignmentErrorsExtended
Definition: AlignmentErrorsExtended.h:10
AlignmentProducerBase::getTsosVectorCollection
virtual bool getTsosVectorCollection(const edm::Run &, edm::Handle< TsosVectorCollection > &)=0
edm::ESGetToken
Definition: EventSetup.h:48
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
AlignmentProducerBase::gprToken_
const edm::ESGetToken< Alignments, GlobalPositionRcd > gprToken_
Definition: AlignmentProducerBase.h:273
edm::EventSetup::getData
bool getData(T &iHolder) const
Definition: EventSetup.h:127
AlignmentProducerBase::useExtras_
const bool useExtras_
Definition: AlignmentProducerBase.h:124
AlignmentProducerBase::watchCSCAlErrExtRcd_
edm::ESWatcher< CSCAlignmentErrorExtendedRcd > watchCSCAlErrExtRcd_
Definition: AlignmentProducerBase.h:293
GeometryAligner::attachSurfaceDeformations
void attachSurfaceDeformations(const C *geometry, const AlignmentSurfaceDeformations *surfaceDeformations)
Definition: GeometryAligner.h:120
AlignmentProducerBase::surveyErrors_
const SurveyErrors * surveyErrors_
Definition: AlignmentProducerBase.h:306
align::Alignables
std::vector< Alignable * > Alignables
Definition: Utilities.h:31
AlignmentProducerBase::initBeamSpot
void initBeamSpot(const edm::Event &)
Initializes Beamspot @beamSpot_ of Alignables @alignableExtras_.
Definition: AlignmentProducerBase.cc:417
GEMGeometry.h
GeometryAligner.h
Frameworkfwd.h
PTrackerAdditionalParametersPerDet.h
ESWatcher.h
AlignmentProducerBase::~AlignmentProducerBase
virtual ~AlignmentProducerBase() noexcept(false)
Definition: AlignmentProducerBase.cc:100
Exception
Definition: hltDiff.cc:245
AlignmentProducerBase::applyAlignmentsToDB
void applyAlignmentsToDB(const edm::EventSetup &)
Definition: AlignmentProducerBase.cc:447
AlignmentProducerBase::clusterValueMapTag_
const edm::InputTag clusterValueMapTag_
ValueMap containing associtaion cluster-flag.
Definition: AlignmentProducerBase.h:136
AlignmentProducerBase::watchGlobalPositionRcd_
edm::ESWatcher< GlobalPositionRcd > watchGlobalPositionRcd_
Definition: AlignmentProducerBase.h:284
AlignmentProducerBase::gemAliToken_
const edm::ESGetToken< Alignments, GEMAlignmentRcd > gemAliToken_
Definition: AlignmentProducerBase.h:266
edm::IOVSyncValue::beginOfTime
static const IOVSyncValue & beginOfTime()
Definition: IOVSyncValue.cc:88
AlignmentProducerBase::alignmentParameterStore_
std::unique_ptr< AlignmentParameterStore > alignmentParameterStore_
Definition: AlignmentProducerBase.h:229
align::RunRanges
std::vector< RunRange > RunRanges
Definition: Utilities.h:39
AlignmentProducerBase::createMonitors
void createMonitors(edm::ConsumesCollector &)
Creates the monitors.
Definition: AlignmentProducerBase.cc:290
AlignmentProducerBase::globalPositions_
std::unique_ptr< const Alignments > globalPositions_
GlobalPositions that might be read from DB, nullptr otherwise.
Definition: AlignmentProducerBase.h:236
AlignmentAlgorithmBase.h
Interface/Base class for alignment algorithms, each alignment algorithm has to be derived from this c...
ConsumesCollector.h
AlignmentProducerBase::ptitpToken_
const edm::ESGetToken< PTrackerAdditionalParametersPerDet, PTrackerAdditionalParametersPerDetRcd > ptitpToken_
Definition: AlignmentProducerBase.h:258
AlignmentProducerBase::watchDTSurveyRcd_
edm::ESWatcher< DTSurveyRcd > watchDTSurveyRcd_
Definition: AlignmentProducerBase.h:297
AlignmentProducerBase::stRandomRotation_
const double stRandomRotation_
Definition: AlignmentProducerBase.h:247
TrackerSurveyErrorExtendedRcd.h
AlignmentProducerBase::stRandomShift_
const double stRandomShift_
Definition: AlignmentProducerBase.h:247
AlignmentProducerBase::cscSurvErrorToken_
const edm::ESGetToken< SurveyErrors, CSCSurveyErrorExtendedRcd > cscSurvErrorToken_
Definition: AlignmentProducerBase.h:279
MuonGeometryRecord.h
AlignmentProducerBase::startProcessing
void startProcessing()
Start processing of events.
Definition: AlignmentProducerBase.cc:103
AlignmentProducerBase::cscGeomToken_
const edm::ESGetToken< CSCGeometry, MuonGeometryRecord > cscGeomToken_
Definition: AlignmentProducerBase.h:260
edm::Event
Definition: Event.h:73
AlignmentProducerBase::saveDeformationsToDB_
const bool saveDeformationsToDB_
Definition: AlignmentProducerBase.h:250
AlignmentProducerBase::cscAliErrToken_
const edm::ESGetToken< AlignmentErrorsExtended, CSCAlignmentErrorExtendedRcd > cscAliErrToken_
Definition: AlignmentProducerBase.h:269
Alignments
Definition: Alignments.h:10
cmssw_cycle_finder.G
G
Definition: cmssw_cycle_finder.py:154
AlignmentProducerBase::beginRunImpl
void beginRunImpl(const edm::Run &, const edm::EventSetup &)
begin run
Definition: AlignmentProducerBase.cc:224
edm::InputTag
Definition: InputTag.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
AlignmentProducerBase::config_
edm::ParameterSet config_
Definition: AlignmentProducerBase.h:244
DTSurveyRcd.h
AlignmentProducerBase::saveToDB_
const bool saveToDB_
Definition: AlignmentProducerBase.h:250
AlignmentProducerBase::firstRun_
cond::Time_t firstRun_
Definition: AlignmentProducerBase.h:313
AlignmentProducerBase::getAliClusterValueMap
virtual bool getAliClusterValueMap(const edm::Event &, edm::Handle< AliClusterValueMap > &)=0
AlignmentProducerBase::dtAliToken_
const edm::ESGetToken< Alignments, DTAlignmentRcd > dtAliToken_
Definition: AlignmentProducerBase.h:264
AlignmentProducerBase::writeDB
void writeDB(Alignments *, const std::string &, AlignmentErrorsExtended *, const std::string &, const AlignTransform *, cond::Time_t) const
Definition: AlignmentProducerBase.cc:884
update
#define update(a, b)
Definition: TrackClassifier.cc:10
GeometryAligner
Class to update a given geometry with a set of alignments.
Definition: GeometryAligner.h:33
AlignmentProducerBase::watchTkSurveyRcd_
edm::ESWatcher< TrackerSurveyRcd > watchTkSurveyRcd_
Definition: AlignmentProducerBase.h:295
CSCAlignmentRcd.h
CSCGeometry.h
AlignmentProducerBase::dtSurveyToken_
const edm::ESGetToken< Alignments, DTSurveyRcd > dtSurveyToken_
Definition: AlignmentProducerBase.h:276