CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
CreateIdealTkAlRecords Class Reference
Inheritance diagram for CreateIdealTkAlRecords:
edm::one::EDAnalyzer<> edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 CreateIdealTkAlRecords (const edm::ParameterSet &)
 
 ~CreateIdealTkAlRecords () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer<>
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
static std::string toString (const GeomDetEnumerators::SubDetector &)
 
static GeomDetEnumerators::SubDetector toSubDetector (const std::string &sub)
 
static std::vector< GeomDetEnumerators::SubDetectortoSubDetectors (const std::vector< std::string > &subs)
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void addAlignmentInfo (const GeomDet &)
 
void alignToGT (const edm::EventSetup &)
 
void analyze (const edm::Event &, const edm::EventSetup &) override
 
void clearAlignmentInfos ()
 
std::unique_ptr< TrackerGeometryretrieveGeometry (const edm::EventSetup &)
 
void writeToDB ()
 

Private Attributes

AlignmentErrorsExtended alignmentErrors_
 
Alignments alignments_
 
AlignmentSurfaceDeformations alignmentSurfaceDeformations_
 
const bool alignToGlobalTag_
 
const bool createReferenceRcd_
 
bool firstEvent_
 
std::vector< uint32_t > rawIDs_
 
const std::vector< GeomDetEnumerators::SubDetectorskipSubDetectors_
 
std::vector< GeomDetEnumerators::SubDetectorsubDets_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Description: Plugin to create ideal tracker alignment records.

Implementation: The plugin takes the geometry stored in the global tag and transfers this information to the format needed in the TrackerAlignmentRcd. The APEs are set to zero for all det IDs of the tracker geometry and put into an TrackerAlignmentErrorExtendedRcd. In addition an empty TrackerSurfaceDeformationRcd is created corresponding to ideal surfaces.

An option exists to align to the content of the used global tag. This is useful, if the geometry record and the tracker alignment records do not match.

Definition at line 69 of file CreateTrackerAlignmentRcds.cc.

Constructor & Destructor Documentation

◆ CreateIdealTkAlRecords()

CreateIdealTkAlRecords::CreateIdealTkAlRecords ( const edm::ParameterSet iConfig)
explicit

Definition at line 102 of file CreateTrackerAlignmentRcds.cc.

103  : skipSubDetectors_(toSubDetectors(iConfig.getUntrackedParameter<std::vector<std::string> >("skipSubDetectors"))),
104  alignToGlobalTag_(iConfig.getUntrackedParameter<bool>("alignToGlobalTag")),
105  createReferenceRcd_(iConfig.getUntrackedParameter<bool>("createReferenceRcd")),
106  firstEvent_(true) {}

◆ ~CreateIdealTkAlRecords()

CreateIdealTkAlRecords::~CreateIdealTkAlRecords ( )
override

Definition at line 108 of file CreateTrackerAlignmentRcds.cc.

108 {}

Member Function Documentation

◆ addAlignmentInfo()

void CreateIdealTkAlRecords::addAlignmentInfo ( const GeomDet det)
private

Definition at line 254 of file CreateTrackerAlignmentRcds.cc.

254  {
255  const auto subDetector = toString(det.subDetector());
256  const auto& detId = det.geographicalId().rawId();
257  const auto& pos = det.position();
258  const auto& rot = det.rotation();
259  rawIDs_.push_back(detId);
260  subDets_.push_back(det.subDetector());
261 
262  // TrackerAlignmentRcd entry
263  if (createReferenceRcd_) {
265  } else {
266  const AlignTransform::Translation translation(pos.x(), pos.y(), pos.z());
268  CLHEP::HepRep3x3(rot.xx(), rot.xy(), rot.xz(), rot.yx(), rot.yy(), rot.yz(), rot.zx(), rot.zy(), rot.zz()));
269  const auto& eulerAngles = rotation.eulerAngles();
270  LogDebug("Alignment") << "============================================================\n"
271  << "subdetector: " << subDetector << "\n"
272  << "detId: " << detId << "\n"
273  << "------------------------------------------------------------\n"
274  << " x: " << pos.x() << "\n"
275  << " y: " << pos.y() << "\n"
276  << " z: " << pos.z() << "\n"
277  << " phi: " << eulerAngles.phi() << "\n"
278  << " theta: " << eulerAngles.theta() << "\n"
279  << " psi: " << eulerAngles.psi() << "\n"
280  << "============================================================\n";
281  alignments_.m_align.emplace_back(AlignTransform(translation, rotation, detId));
282  }
283 
284  // TrackerAlignmentErrorExtendedRcd entry
285  const AlignTransformError::SymMatrix zeroAPEs(6, 0);
286  alignmentErrors_.m_alignError.emplace_back(AlignTransformErrorExtended(zeroAPEs, detId));
287 }

References alignmentErrors_, alignments_, createReferenceRcd_, GeomDet::geographicalId(), LogDebug, Alignments::m_align, AlignmentErrorsExtended::m_alignError, GeomDet::position(), DetId::rawId(), rawIDs_, makeMuonMisalignmentScenario::rot, idealTransformation::rotation, GeomDet::rotation(), GeomDet::subDetector(), subDets_, and toString().

Referenced by analyze().

◆ alignToGT()

void CreateIdealTkAlRecords::alignToGT ( const edm::EventSetup iSetup)
private

Definition at line 289 of file CreateTrackerAlignmentRcds.cc.

289  {
290  LogDebug("Alignment") << "Aligning to global tag\n";
291 
292  edm::ESHandle<Alignments> alignments;
293  iSetup.get<TrackerAlignmentRcd>().get(alignments);
295  iSetup.get<TrackerAlignmentErrorExtendedRcd>().get(alignmentErrors);
297  iSetup.get<TrackerSurfaceDeformationRcd>().get(surfaceDeformations);
298 
299  if (alignments->m_align.size() != alignmentErrors->m_alignError.size())
300  throw cms::Exception("GeometryMismatch")
301  << "Size mismatch between alignments (size=" << alignments->m_align.size()
302  << ") and alignment errors (size=" << alignmentErrors->m_alignError.size() << ")";
303 
304  std::vector<uint32_t> commonIDs;
305  auto itAlignErr = alignmentErrors->m_alignError.cbegin();
306  for (auto itAlign = alignments->m_align.cbegin(); itAlign != alignments->m_align.cend(); ++itAlign, ++itAlignErr) {
307  const auto id = itAlign->rawId();
308  auto found = std::find(rawIDs_.cbegin(), rawIDs_.cend(), id);
309  if (found != rawIDs_.cend()) {
310  if (id != itAlignErr->rawId())
311  throw cms::Exception("GeometryMismatch") << "DetId mismatch between alignments (rawId=" << id
312  << ") and alignment errors (rawId=" << itAlignErr->rawId() << ")";
313 
314  const auto index = std::distance(rawIDs_.cbegin(), found);
316  continue;
317 
318  if (alignments_.m_align[index].rawId() != alignmentErrors_.m_alignError[index].rawId())
319  throw cms::Exception("GeometryMismatch")
320  << "DetId mismatch between alignments (rawId=" << alignments_.m_align[index].rawId()
321  << ") and alignment errors (rawId=" << alignmentErrors_.m_alignError[index].rawId() << ")";
322 
323  LogDebug("Alignment") << "============================================================\n"
324  << "\nGeometry content (" << toString(subDets_[index]) << ", "
325  << alignments_.m_align[index].rawId() << "):\n"
326  << "\tx: " << alignments_.m_align[index].translation().x()
327  << "\ty: " << alignments_.m_align[index].translation().y()
328  << "\tz: " << alignments_.m_align[index].translation().z()
329  << "\tphi: " << alignments_.m_align[index].rotation().phi()
330  << "\ttheta: " << alignments_.m_align[index].rotation().theta()
331  << "\tpsi: " << alignments_.m_align[index].rotation().psi()
332  << "============================================================\n";
333  alignments_.m_align[index] = *itAlign;
334  alignmentErrors_.m_alignError[index] = *itAlignErr;
335  commonIDs.push_back(id);
336  LogDebug("Alignment") << "============================================================\n"
337  << "Global tag content (" << toString(subDets_[index]) << ", "
338  << alignments_.m_align[index].rawId() << "):\n"
339  << "\tx: " << alignments_.m_align[index].translation().x()
340  << "\ty: " << alignments_.m_align[index].translation().y()
341  << "\tz: " << alignments_.m_align[index].translation().z()
342  << "\tphi: " << alignments_.m_align[index].rotation().phi()
343  << "\ttheta: " << alignments_.m_align[index].rotation().theta()
344  << "\tpsi: " << alignments_.m_align[index].rotation().psi()
345  << "============================================================\n";
346  }
347  }
348 
349  // - surface deformations are stored differently
350  // -> different treatment
351  // - the above payloads contain also entries for ideal modules
352  // - no entry is created for ideal surfaces
353  // -> size of surface deformation payload does not necessarily match the
354  // size of the other tracker alignment payload
355  for (const auto& id : commonIDs) {
356  // search for common raw ID in surface deformation items
357  auto item = std::find_if(surfaceDeformations->items().cbegin(),
358  surfaceDeformations->items().cend(),
359  [&id](const auto& i) { return i.m_rawId == id; });
360  if (item == surfaceDeformations->items().cend())
361  continue; // not found
362 
363  // copy surface deformation item
364  const auto index = std::distance(surfaceDeformations->items().cbegin(), item);
365  const auto beginEndPair = surfaceDeformations->parameters(index);
366  std::vector<align::Scalar> params(beginEndPair.first, beginEndPair.second);
367  alignmentSurfaceDeformations_.add(item->m_rawId, item->m_parametrizationType, params);
368  }
369 }

References AlignmentSurfaceDeformations::add(), alignmentErrors_, alignments_, alignmentSurfaceDeformations_, HLT_FULL_cff::distance, spr::find(), newFWLiteAna::found, edm::EventSetup::get(), get, mps_fire::i, triggerObjects_cff::id, B2GTnPMonitor_cfi::item, AlignmentSurfaceDeformations::items(), LogDebug, Alignments::m_align, AlignmentErrorsExtended::m_alignError, AlignmentSurfaceDeformations::parameters(), CalibrationSummaryClient_cfi::params, rawIDs_, skipSubDetectors_, subDets_, and toString().

Referenced by analyze().

◆ analyze()

void CreateIdealTkAlRecords::analyze ( const edm::Event ,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 115 of file CreateTrackerAlignmentRcds.cc.

115  {
116  if (firstEvent_) {
118  const auto tracker = retrieveGeometry(iSetup);
119 
120  auto dets = tracker->dets();
121  std::sort(dets.begin(), dets.end(), [](const auto& a, const auto& b) {
122  return a->geographicalId().rawId() < b->geographicalId().rawId();
123  });
124 
125  for (const auto& det : dets)
126  addAlignmentInfo(*det);
128  alignToGT(iSetup);
129  writeToDB();
130  firstEvent_ = false;
131  }
132 }

References a, addAlignmentInfo(), alignToGlobalTag_, alignToGT(), b, clearAlignmentInfos(), createReferenceRcd_, firstEvent_, retrieveGeometry(), PbPb_ZMuSkimMuonDPG_cff::tracker, and writeToDB().

◆ clearAlignmentInfos()

void CreateIdealTkAlRecords::clearAlignmentInfos ( )
private

◆ fillDescriptions()

void CreateIdealTkAlRecords::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 386 of file CreateTrackerAlignmentRcds.cc.

386  {
388  desc.setComment(
389  "Creates ideal TrackerAlignmentRcd and TrackerAlignmentErrorExtendedRcd "
390  "from the loaded tracker geometry. "
391  "PoolDBOutputService must be set up for these records.");
392  desc.addUntracked<bool>("alignToGlobalTag", false);
393  desc.addUntracked<std::vector<std::string> >("skipSubDetectors", std::vector<std::string>{});
394  desc.addUntracked<bool>("createReferenceRcd", false);
395  descriptions.add("createIdealTkAlRecords", desc);
396 }

References edm::ConfigurationDescriptions::add(), and submitPVResolutionJobs::desc.

◆ retrieveGeometry()

std::unique_ptr< TrackerGeometry > CreateIdealTkAlRecords::retrieveGeometry ( const edm::EventSetup iSetup)
private

Definition at line 238 of file CreateTrackerAlignmentRcds.cc.

238  {
239  edm::ESHandle<GeometricDet> geometricDet;
240  iSetup.get<IdealGeometryRecord>().get(geometricDet);
241 
243  iSetup.get<PTrackerParametersRcd>().get(ptp);
244 
245  edm::ESHandle<TrackerTopology> tTopoHandle;
246  iSetup.get<TrackerTopologyRcd>().get(tTopoHandle);
247  const auto* const tTopo = tTopoHandle.product();
248 
249  TrackerGeomBuilderFromGeometricDet trackerBuilder;
250 
251  return std::unique_ptr<TrackerGeometry>{trackerBuilder.build(&(*geometricDet), *ptp, tTopo)};
252 }

References TrackerGeomBuilderFromGeometricDet::build(), edm::EventSetup::get(), get, and edm::ESHandle< T >::product().

Referenced by analyze().

◆ toString()

std::string CreateIdealTkAlRecords::toString ( const GeomDetEnumerators::SubDetector sub)
static

Definition at line 134 of file CreateTrackerAlignmentRcds.cc.

134  {
135  switch (sub) {
137  return "PixelBarrel";
139  return "PixelEndcap";
141  return "TIB";
143  return "TOB";
145  return "TID";
147  return "TEC";
149  return "CSC";
151  return "DT";
153  return "RPCBarrel";
155  return "RPCEndcap";
157  return "GEM";
159  return "ME0";
161  return "P2OTB";
163  return "P2OTEC";
165  return "P1PXB";
167  return "P1PXEC";
169  return "P2PXB";
171  return "P2PXEC";
173  return "invalidDet";
174  default:
175  throw cms::Exception("UnknownSubdetector");
176  }
177 }

References GeomDetEnumerators::CSC, GeomDetEnumerators::DT, Exception, GeomDetEnumerators::GEM, GeomDetEnumerators::invalidDet, GeomDetEnumerators::ME0, GeomDetEnumerators::P1PXB, GeomDetEnumerators::P1PXEC, GeomDetEnumerators::P2OTB, GeomDetEnumerators::P2OTEC, GeomDetEnumerators::P2PXB, GeomDetEnumerators::P2PXEC, GeomDetEnumerators::PixelBarrel, GeomDetEnumerators::PixelEndcap, GeomDetEnumerators::RPCBarrel, GeomDetEnumerators::RPCEndcap, GeomDetEnumerators::TEC, GeomDetEnumerators::TIB, GeomDetEnumerators::TID, and GeomDetEnumerators::TOB.

Referenced by addAlignmentInfo(), and alignToGT().

◆ toSubDetector()

GeomDetEnumerators::SubDetector CreateIdealTkAlRecords::toSubDetector ( const std::string &  sub)
static

Definition at line 179 of file CreateTrackerAlignmentRcds.cc.

179  {
180  if (sub == "PixelBarrel")
182  else if (sub == "PixelEndcap")
184  else if (sub == "TIB")
186  else if (sub == "TOB")
188  else if (sub == "TID")
190  else if (sub == "TEC")
192  else if (sub == "CSC")
194  else if (sub == "DT")
195  return GeomDetEnumerators::DT;
196  else if (sub == "RPCBarrel")
198  else if (sub == "RPCEndcap")
200  else if (sub == "GEM")
202  else if (sub == "ME0")
204  else if (sub == "P2OTB")
206  else if (sub == "P2OTEC")
208  else if (sub == "P1PXB")
210  else if (sub == "P1PXEC")
212  else if (sub == "P2PXB")
214  else if (sub == "P2PXEC")
216  else if (sub == "invalidDet")
218  else
219  throw cms::Exception("UnknownSubdetector") << sub;
220 }

References GeomDetEnumerators::CSC, GeomDetEnumerators::DT, Exception, GeomDetEnumerators::GEM, GeomDetEnumerators::invalidDet, GeomDetEnumerators::ME0, GeomDetEnumerators::P1PXB, GeomDetEnumerators::P1PXEC, GeomDetEnumerators::P2OTB, GeomDetEnumerators::P2OTEC, GeomDetEnumerators::P2PXB, GeomDetEnumerators::P2PXEC, GeomDetEnumerators::PixelBarrel, GeomDetEnumerators::PixelEndcap, GeomDetEnumerators::RPCBarrel, GeomDetEnumerators::RPCEndcap, GeomDetEnumerators::TEC, GeomDetEnumerators::TIB, GeomDetEnumerators::TID, and GeomDetEnumerators::TOB.

Referenced by toSubDetectors().

◆ toSubDetectors()

std::vector< GeomDetEnumerators::SubDetector > CreateIdealTkAlRecords::toSubDetectors ( const std::vector< std::string > &  subs)
static

Definition at line 222 of file CreateTrackerAlignmentRcds.cc.

223  {
224  std::vector<GeomDetEnumerators::SubDetector> result;
225  result.reserve(subs.size());
226  for (const auto& sub : subs)
227  result.emplace_back(toSubDetector(sub));
228  return result;
229 }

References mps_fire::result, and toSubDetector().

◆ writeToDB()

void CreateIdealTkAlRecords::writeToDB ( )
private

Definition at line 371 of file CreateTrackerAlignmentRcds.cc.

371  {
373 
375  if (!poolDb.isAvailable()) {
376  throw cms::Exception("NotAvailable") << "PoolDBOutputService not available";
377  }
378 
379  edm::LogInfo("Alignment") << "Writing ideal tracker-alignment records.";
380  poolDb->writeOne(&alignments_, since, "TrackerAlignmentRcd");
381  poolDb->writeOne(&alignmentErrors_, since, "TrackerAlignmentErrorExtendedRcd");
382  poolDb->writeOne(&alignmentSurfaceDeformations_, since, "TrackerSurfaceDeformationRcd");
383 }

References alignmentErrors_, alignments_, alignmentSurfaceDeformations_, cond::TimeTypeSpecs::beginValue, Exception, edm::Service< T >::isAvailable(), cond::runnumber, writeEcalDQMStatus::since, cond::timeTypeSpecs, and cond::service::PoolDBOutputService::writeOne().

Referenced by analyze().

Member Data Documentation

◆ alignmentErrors_

AlignmentErrorsExtended CreateIdealTkAlRecords::alignmentErrors_
private

◆ alignments_

Alignments CreateIdealTkAlRecords::alignments_
private

◆ alignmentSurfaceDeformations_

AlignmentSurfaceDeformations CreateIdealTkAlRecords::alignmentSurfaceDeformations_
private

Definition at line 94 of file CreateTrackerAlignmentRcds.cc.

Referenced by alignToGT(), clearAlignmentInfos(), and writeToDB().

◆ alignToGlobalTag_

const bool CreateIdealTkAlRecords::alignToGlobalTag_
private

Definition at line 89 of file CreateTrackerAlignmentRcds.cc.

Referenced by analyze().

◆ createReferenceRcd_

const bool CreateIdealTkAlRecords::createReferenceRcd_
private

Definition at line 90 of file CreateTrackerAlignmentRcds.cc.

Referenced by addAlignmentInfo(), and analyze().

◆ firstEvent_

bool CreateIdealTkAlRecords::firstEvent_
private

Definition at line 91 of file CreateTrackerAlignmentRcds.cc.

Referenced by analyze().

◆ rawIDs_

std::vector<uint32_t> CreateIdealTkAlRecords::rawIDs_
private

Definition at line 95 of file CreateTrackerAlignmentRcds.cc.

Referenced by addAlignmentInfo(), alignToGT(), and clearAlignmentInfos().

◆ skipSubDetectors_

const std::vector<GeomDetEnumerators::SubDetector> CreateIdealTkAlRecords::skipSubDetectors_
private

Definition at line 88 of file CreateTrackerAlignmentRcds.cc.

Referenced by alignToGT().

◆ subDets_

std::vector<GeomDetEnumerators::SubDetector> CreateIdealTkAlRecords::subDets_
private

Definition at line 96 of file CreateTrackerAlignmentRcds.cc.

Referenced by addAlignmentInfo(), and alignToGT().

GeomDet::position
const Surface::PositionType & position() const
The position (origin of the R.F.)
Definition: GeomDet.h:43
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
AlignmentErrorsExtended::clear
void clear()
Clear vector without having to look into internals:
Definition: AlignmentErrorsExtended.h:17
mps_fire.i
i
Definition: mps_fire.py:428
cond::TimeTypeSpecs::beginValue
Time_t beginValue
Definition: Time.h:41
GeomDetEnumerators::RPCEndcap
Definition: GeomDetEnumerators.h:20
GeomDetEnumerators::TID
Definition: GeomDetEnumerators.h:15
GeomDetEnumerators::invalidDet
Definition: GeomDetEnumerators.h:31
CalibrationSummaryClient_cfi.params
params
Definition: CalibrationSummaryClient_cfi.py:14
CreateIdealTkAlRecords::toSubDetector
static GeomDetEnumerators::SubDetector toSubDetector(const std::string &sub)
Definition: CreateTrackerAlignmentRcds.cc:179
AlignTransform::Rotation
CLHEP::HepRotation Rotation
Definition: AlignTransform.h:19
pos
Definition: PixelAliasList.h:18
GeomDetEnumerators::TIB
Definition: GeomDetEnumerators.h:13
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
GeomDetEnumerators::P2OTB
Definition: GeomDetEnumerators.h:23
AlignTransform::Translation
CLHEP::Hep3Vector Translation
Definition: AlignTransform.h:18
CreateIdealTkAlRecords::clearAlignmentInfos
void clearAlignmentInfos()
Definition: CreateTrackerAlignmentRcds.cc:231
TrackerGeomBuilderFromGeometricDet::build
TrackerGeometry * build(const GeometricDet *gd, const PTrackerParameters &ptp, const TrackerTopology *tTopo)
Definition: TrackerGeomBuilderFromGeometricDet.cc:43
GeomDetEnumerators::TOB
Definition: GeomDetEnumerators.h:14
TrackerAlignmentRcd
Definition: TrackerAlignmentRcd.h:6
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
spr::find
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
newFWLiteAna.found
found
Definition: newFWLiteAna.py:118
edm::Service::isAvailable
bool isAvailable() const
Definition: Service.h:40
PTrackerParametersRcd
Definition: PTrackerParametersRcd.h:9
CreateIdealTkAlRecords::alignToGlobalTag_
const bool alignToGlobalTag_
Definition: CreateTrackerAlignmentRcds.cc:89
GeomDetEnumerators::PixelBarrel
Definition: GeomDetEnumerators.h:11
cond::timeTypeSpecs
const TimeTypeSpecs timeTypeSpecs[]
Definition: Time.cc:16
TrackerSurfaceDeformationRcd
Definition: TrackerSurfaceDeformationRcd.h:6
edm::EventSetup::get
T get() const
Definition: EventSetup.h:80
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
GeomDetEnumerators::P1PXEC
Definition: GeomDetEnumerators.h:26
edm::ESHandle< Alignments >
writeEcalDQMStatus.since
since
Definition: writeEcalDQMStatus.py:53
GeomDetEnumerators::P2OTEC
Definition: GeomDetEnumerators.h:24
CreateIdealTkAlRecords::rawIDs_
std::vector< uint32_t > rawIDs_
Definition: CreateTrackerAlignmentRcds.cc:95
b
double b
Definition: hdecay.h:118
GeomDetEnumerators::CSC
Definition: GeomDetEnumerators.h:17
AlignTransform
Definition: AlignTransform.h:15
PbPb_ZMuSkimMuonDPG_cff.tracker
tracker
Definition: PbPb_ZMuSkimMuonDPG_cff.py:60
GeomDetEnumerators::P1PXB
Definition: GeomDetEnumerators.h:25
CreateIdealTkAlRecords::toString
static std::string toString(const GeomDetEnumerators::SubDetector &)
Definition: CreateTrackerAlignmentRcds.cc:134
GeomDetEnumerators::DT
Definition: GeomDetEnumerators.h:18
GeomDet::geographicalId
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:223
idealTransformation.rotation
dictionary rotation
Definition: idealTransformation.py:1
a
double a
Definition: hdecay.h:119
CreateIdealTkAlRecords::retrieveGeometry
std::unique_ptr< TrackerGeometry > retrieveGeometry(const edm::EventSetup &)
Definition: CreateTrackerAlignmentRcds.cc:238
CreateIdealTkAlRecords::alignmentErrors_
AlignmentErrorsExtended alignmentErrors_
Definition: CreateTrackerAlignmentRcds.cc:93
GeomDetEnumerators::TEC
Definition: GeomDetEnumerators.h:16
CreateIdealTkAlRecords::firstEvent_
bool firstEvent_
Definition: CreateTrackerAlignmentRcds.cc:91
CreateIdealTkAlRecords::subDets_
std::vector< GeomDetEnumerators::SubDetector > subDets_
Definition: CreateTrackerAlignmentRcds.cc:96
CreateIdealTkAlRecords::alignmentSurfaceDeformations_
AlignmentSurfaceDeformations alignmentSurfaceDeformations_
Definition: CreateTrackerAlignmentRcds.cc:94
cond::runnumber
Definition: Time.h:19
CreateIdealTkAlRecords::addAlignmentInfo
void addAlignmentInfo(const GeomDet &)
Definition: CreateTrackerAlignmentRcds.cc:254
AlignmentSurfaceDeformations::add
bool add(align::ID rawId, int type, const std::vector< align::Scalar > &parameters)
Add a new item.
Definition: AlignmentSurfaceDeformations.h:41
edm::Service< cond::service::PoolDBOutputService >
AlignmentSurfaceDeformations
Definition: AlignmentSurfaceDeformations.h:20
B2GTnPMonitor_cfi.item
item
Definition: B2GTnPMonitor_cfi.py:147
get
#define get
CreateIdealTkAlRecords::createReferenceRcd_
const bool createReferenceRcd_
Definition: CreateTrackerAlignmentRcds.cc:90
CreateIdealTkAlRecords::alignments_
Alignments alignments_
Definition: CreateTrackerAlignmentRcds.cc:92
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
CreateIdealTkAlRecords::writeToDB
void writeToDB()
Definition: CreateTrackerAlignmentRcds.cc:371
Alignments::clear
void clear()
Clear vector without having to look into internals:
Definition: Alignments.h:17
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
Exception
Definition: hltDiff.cc:246
cond::service::PoolDBOutputService::writeOne
Hash writeOne(const T *payload, Time_t time, const std::string &recordName)
Definition: PoolDBOutputService.h:63
makeMuonMisalignmentScenario.rot
rot
Definition: makeMuonMisalignmentScenario.py:322
CreateIdealTkAlRecords::toSubDetectors
static std::vector< GeomDetEnumerators::SubDetector > toSubDetectors(const std::vector< std::string > &subs)
Definition: CreateTrackerAlignmentRcds.cc:222
AlignTransformErrorExtended
Definition: AlignTransformErrorExtended.h:13
GeomDetEnumerators::GEM
Definition: GeomDetEnumerators.h:21
CreateIdealTkAlRecords::alignToGT
void alignToGT(const edm::EventSetup &)
Definition: CreateTrackerAlignmentRcds.cc:289
AlignmentSurfaceDeformations::parameters
ParametersConstIteratorPair parameters(size_t index) const
Definition: AlignmentSurfaceDeformations.h:59
GeomDetEnumerators::PixelEndcap
Definition: GeomDetEnumerators.h:12
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
AlignTransformError::SymMatrix
CLHEP::HepSymMatrix SymMatrix
Definition: AlignTransformError.h:15
TrackerGeomBuilderFromGeometricDet
Definition: TrackerGeomBuilderFromGeometricDet.h:17
Alignments::m_align
std::vector< AlignTransform > m_align
Definition: Alignments.h:19
AlignmentErrorsExtended::m_alignError
std::vector< AlignTransformErrorExtended > m_alignError
Definition: AlignmentErrorsExtended.h:19
GeomDetEnumerators::RPCBarrel
Definition: GeomDetEnumerators.h:19
mps_fire.result
result
Definition: mps_fire.py:311
GeomDetEnumerators::P2PXB
Definition: GeomDetEnumerators.h:27
CreateIdealTkAlRecords::skipSubDetectors_
const std::vector< GeomDetEnumerators::SubDetector > skipSubDetectors_
Definition: CreateTrackerAlignmentRcds.cc:88
cms::Exception
Definition: Exception.h:70
TrackerTopologyRcd
Definition: TrackerTopologyRcd.h:10
GeomDetEnumerators::ME0
Definition: GeomDetEnumerators.h:22
HLT_FULL_cff.distance
distance
Definition: HLT_FULL_cff.py:7733
TrackerAlignmentErrorExtendedRcd
Definition: TrackerAlignmentErrorExtendedRcd.h:6
AlignmentSurfaceDeformations::items
const ItemVector & items() const
Get vector of all items.
Definition: AlignmentSurfaceDeformations.h:55
GeomDet::rotation
const Surface::RotationType & rotation() const
The rotation defining the local R.F.
Definition: GeomDet.h:46
IdealGeometryRecord
Definition: IdealGeometryRecord.h:25
GeomDet::subDetector
virtual SubDetector subDetector() const
Which subdetector.
Definition: GeomDet.cc:38
GeomDetEnumerators::P2PXEC
Definition: GeomDetEnumerators.h:28