ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Types | Private Member Functions | Private Attributes | List of all members
InDet::InDetGeometryManagerTool Class Reference

#include <InDetGeometryManagerTool.h>

Inheritance diagram for InDet::InDetGeometryManagerTool:
Collaboration diagram for InDet::InDetGeometryManagerTool:

Public Member Functions

 InDetGeometryManagerTool (const std::string &type, const std::string &name, const IInterface *parent)
 
virtual ~InDetGeometryManagerTool ()
 
StatusCode initialize ()
 
StatusCode finalize ()
 
int ReadGeometry (int solveLevel)
 read the geometry Method is called from the main AlignAlg to build the geometry based on the requested level of alignment. More...
 
void PrintModPositions ()
 
void StoreModPositions (std::string)
 
void buildGeometry ()
 builds geometry for Silicon alignment More...
 
void addModuleParameters (Trk::AlignModule *module, DataVector< DataVector< Trk::AlignPar > > *allFullModPars, DataVector< DataVector< Trk::AlignPar > > *allActiveModPars)
 adds alignment parameters for the module checks for active parameters and calls setSigmas() More...
 
bool checkAlignLevel ()
 check whether the alignment level is correct More...
 
void setLogStream (std::ostream *os)
 sets the output stream for the logfile More...
 
virtual void setNtuple (TFile *)
 Sets output ntuple file, to be implemented if needed for detector-specific implementation. More...
 
virtual int getNextIDHash ()
 get next free IDHash usable for new AlignModule More...
 
virtual void setFirstIDHash (unsigned int idhash)
 set first free IDHash usable for new AlignModule More...
 
virtual void setModuleList (Trk::AlignModuleList *list)
 set pointer to module list to which the modules should be added to More...
 
virtual void setHashMaps (std::vector< Trk::AlignModuleList * > *maps)
 set pointer to vector of hashMaps to which the elements should be added to More...
 
virtual int alignLevel ()
 get alignment level More...
 
virtual void setAlignLevel (int level)
 set alignment level More...
 
virtual int alignLevelBarrel ()
 get alignment level More...
 
virtual void setAlignLevelBarrel (int level)
 set alignment level More...
 
virtual bool checkAlignLevelBarrel ()
 check whether the alignment level is allowed More...
 
virtual int alignLevelEndcaps ()
 get alignment level More...
 
virtual void setAlignLevelEndcaps (int level)
 set alignment level More...
 
virtual bool checkAlignLevelEndcaps ()
 check whether the alignment level is allowed More...
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
 
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed. More...
 

Protected Attributes

Trk::AlignModuleListm_alignModuleListPtr = nullptr
 pointer to module list to which the modules are added More...
 
std::vector< Trk::AlignModuleList * > * m_idHashToAlignModuleMapsPtr = nullptr
 pointer to vector of hashMaps to which the elements are added More...
 
int m_hashCounter = 0
 variable for setting the idHash of the AlignModules More...
 
std::ostream * m_logStream = nullptr
 logfile output stream More...
 
int m_alignLevel = 0
 alignment level More...
 
int m_alignLevelBarrel = 0
 alignment level More...
 
int m_alignLevelEndcaps = 0
 alignment level More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

void buildL0 ()
 creates L0 AlignModules for Silicon More...
 
void setSigmas (Trk::AlignModule *mod, DataVector< Trk::AlignPar > *modPars)
 sets sigmas for modules More...
 
bool moduleSelected (Trk::AlignModule *mod)
 check wheather module is selected for module pointer More...
 
bool moduleSelected (unsigned long long modId)
 check wheather module is selected for module id More...
 
void dumpGeometry ()
 print basic geometry info to screen More...
 
bool isOneDetOnly (const Trk::AlignModule *mod, Trk::AlignModule::DetectorType dettype) const
 check whether the module is of a single detector type More...
 
bool isSiOnly (const Trk::AlignModule *mod) const
 check whether the module is Silicon only More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

const InDetDD::PixelDetectorManagerm_pixelDetManager
 pointer to PIX detector manager More...
 
const InDetDD::SCT_DetectorManagerm_sctDetManager
 pointer to SCT detector manager More...
 
const InDetDD::TRT_DetectorManagerm_trtDetManager
 pointer to TRT detector manager More...
 
const PixelIDm_pixHelper
 pointer to PIX detector manager More...
 
const SCT_IDm_sctHelper
 pointer to SCT detector manager More...
 
const SiliconIDm_siHelper
 pointer to Silicon detector manager More...
 
const TRT_IDm_trtHelper
 pointer to TRT detector manager More...
 
ToolHandle< Trk::IGeometryManagerToolm_siGeoManager
 pointer to Silicon geometry manager More...
 
ToolHandle< Trk::IGeometryManagerToolm_trtGeoManager
 pointer to TRT geometry manager More...
 
ToolHandle< Trk::IAlignModuleToolm_alignModuleTool
 pointer to AlignModuleTool More...
 
Trk::AlignModuleList m_alignModuleList
 
Trk::AlignModuleList m_idHashToAlignModuleMap
 
std::vector< Trk::AlignModuleList * > m_idHashToAlignModuleMaps
 
DataVector< DataVector< Trk::AlignPar > > * m_alignParList
 
DataVector< DataVector< Trk::AlignPar > > * m_fullAlignParList
 
bool m_alignX
 
bool m_alignY
 
bool m_alignZ
 
bool m_alignRotX
 
bool m_alignRotY
 
bool m_alignRotZ
 
double m_sigmaX
 
double m_sigmaY
 
double m_sigmaZ
 
double m_sigmaRotX
 
double m_sigmaRotY
 
double m_sigmaRotZ
 
bool m_alignSi
 
bool m_alignTRT
 
bool m_doModuleSelection
 
std::vector< unsigned long long > m_moduleSelection
 
bool m_dumpGeometry
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Detailed Description

Definition at line 47 of file InDetGeometryManagerTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ InDetGeometryManagerTool()

InDet::InDetGeometryManagerTool::InDetGeometryManagerTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Definition at line 34 of file InDetGeometryManagerTool.cxx.

38  , m_pixelDetManager(nullptr)
39  , m_sctDetManager(nullptr)
40  , m_trtDetManager(nullptr)
41  , m_pixHelper()
42  , m_sctHelper()
43  , m_siHelper()
44  , m_trtHelper()
45  , m_siGeoManager("")
46  , m_trtGeoManager("")
47  , m_alignModuleTool("Trk::AlignModuleTool/AlignModuleTool")
49  , m_alignParList(nullptr)
50  , m_fullAlignParList(nullptr)
51  {
52  declareInterface<IGeometryManagerTool>(this);
53  declareProperty("AlignModuleTool", m_alignModuleTool);
54 
55  declareProperty("SiGeometryManager", m_siGeoManager);
56  declareProperty("TRTGeometryManager", m_trtGeoManager);
57 
58  // Inner Detector joboptions
59  declareProperty("AlignSilicon", m_alignSi = true);
60  declareProperty("AlignTRT", m_alignTRT = true);
61 
62  declareProperty("AlignX", m_alignX = true);
63  declareProperty("AlignY", m_alignY = true);
64  declareProperty("AlignZ", m_alignZ = true);
65  declareProperty("AlignRotX", m_alignRotX = true);
66  declareProperty("AlignRotY", m_alignRotY = true);
67  declareProperty("AlignRotZ", m_alignRotZ = true);
68 
69  declareProperty("SetSigmaX", m_sigmaX = 1.);
70  declareProperty("SetSigmaY", m_sigmaY = 1.);
71  declareProperty("SetSigmaZ", m_sigmaZ = 1.);
72  declareProperty("SetSigmaRotX", m_sigmaRotX = 0.001);
73  declareProperty("SetSigmaRotY", m_sigmaRotY = 0.001);
74  declareProperty("SetSigmaRotZ", m_sigmaRotZ = 0.001);
75 
76  // defines alignment level
77  declareProperty("AlignmentLevel", m_alignLevel = -1);
78 
79  declareProperty("doModuleSelection", m_doModuleSelection = false);
80  declareProperty("ModuleSelection", m_moduleSelection);
81 
82  declareProperty("DumpGeometry", m_dumpGeometry = true);
83 
84  // the setarate barrel and endcaps levels are not used here
85  m_alignLevelBarrel = -1;
87 
88  m_hashCounter = 0;
89  m_logStream = nullptr;
90  }

◆ ~InDetGeometryManagerTool()

InDet::InDetGeometryManagerTool::~InDetGeometryManagerTool ( )
virtual

Definition at line 93 of file InDetGeometryManagerTool.cxx.

94  {
95  ATH_MSG_DEBUG("deleting alignModuleList");
96  for (const auto & i:m_alignModuleList){
97  delete i;
98  }
99  m_alignModuleList.clear();
100 
101  ATH_MSG_DEBUG("deleting fullAlignParList");
102  delete m_fullAlignParList;
103  ATH_MSG_DEBUG("deleting alignParList");
104  delete m_alignParList;
105  }

Member Function Documentation

◆ addModuleParameters()

void InDet::InDetGeometryManagerTool::addModuleParameters ( Trk::AlignModule module,
DataVector< DataVector< Trk::AlignPar > > *  allFullModPars,
DataVector< DataVector< Trk::AlignPar > > *  allActiveModPars 
)
virtual

adds alignment parameters for the module checks for active parameters and calls setSigmas()

Reimplemented from Trk::IGeometryManagerTool.

Definition at line 481 of file InDetGeometryManagerTool.cxx.

482  {
483  // for standalone Silicon and TRT modules call the respective methods
484  if(isSiOnly(module)) {
485  m_siGeoManager->addModuleParameters(module,allFullModPars,allActiveModPars);
486  return;
487  }
489  m_trtGeoManager->addModuleParameters(module,allFullModPars,allActiveModPars);
490  return;
491  }
492 
493  // for combined modules we do the work here
494 
495  // prepare all parameters
503 
504  // set sigmas
505  setSigmas(module,fullModPars);
506 
507  // select active parameters based on jobOption properties
509  for(unsigned int ipar=0;ipar<fullModPars->size();++ipar) {
510 
511  Identifier AlimodID = module->identify();
512 
513  ATH_MSG_DEBUG("Inner Detector module with id "<<AlimodID);
514  if( (fullModPars->at(ipar)->paramType() == Trk::AlignModule::TransX && m_alignX)
515  || (fullModPars->at(ipar)->paramType() == Trk::AlignModule::TransY && m_alignY)
516  || (fullModPars->at(ipar)->paramType() == Trk::AlignModule::TransZ && m_alignZ)
517  || (fullModPars->at(ipar)->paramType() == Trk::AlignModule::RotX && m_alignRotX)
518  || (fullModPars->at(ipar)->paramType() == Trk::AlignModule::RotY && m_alignRotY)
519  || (fullModPars->at(ipar)->paramType() == Trk::AlignModule::RotZ && m_alignRotZ) ) {
520  ATH_MSG_DEBUG("parameter type "<<fullModPars->at(ipar)->paramType()<<" is now active");
521  activeModPars->push_back(fullModPars->at(ipar));
522  }
523  else
524  ATH_MSG_DEBUG("parameter type "<<fullModPars->at(ipar)->paramType()<<" is NOT active");
525  }
526 
527  // now add parameters to the list
528  allFullModPars->push_back(fullModPars);
529  allActiveModPars->push_back(activeModPars);
530  }

◆ alignLevel()

virtual int Trk::IGeometryManagerTool::alignLevel ( )
inlinevirtualinherited

get alignment level

Definition at line 80 of file IGeometryManagerTool.h.

80 { return m_alignLevel; }

◆ alignLevelBarrel()

virtual int Trk::IGeometryManagerTool::alignLevelBarrel ( )
inlinevirtualinherited

get alignment level

Definition at line 86 of file IGeometryManagerTool.h.

86 { return m_alignLevelBarrel; }

◆ alignLevelEndcaps()

virtual int Trk::IGeometryManagerTool::alignLevelEndcaps ( )
inlinevirtualinherited

get alignment level

Definition at line 95 of file IGeometryManagerTool.h.

95 { return m_alignLevelEndcaps; }

◆ buildGeometry()

void InDet::InDetGeometryManagerTool::buildGeometry ( )
virtual

builds geometry for Silicon alignment

Reimplemented from Trk::IGeometryManagerTool.

Definition at line 277 of file InDetGeometryManagerTool.cxx.

278  {
279  ATH_MSG_INFO("Preparing the Inner Detector geometry");
280 
281  int idHash = 0;
282 
283  if(m_alignLevel==0)
284  buildL0();
285 
286  else {
287 
288  // Silicon
289  if(m_alignSi) {
290  m_siGeoManager->setFirstIDHash(idHash);
291  m_siGeoManager->setModuleList(m_alignModuleListPtr);
293 
294  m_siGeoManager->buildGeometry();
295 
296  idHash=m_siGeoManager->getNextIDHash();
297  }
298 
299  // TRT
300  if(m_alignTRT) {
301  m_trtGeoManager->setFirstIDHash(idHash);
302  m_trtGeoManager->setModuleList(m_alignModuleListPtr);
304 
305  m_trtGeoManager->buildGeometry();
306  }
307  }
308 
309  return;
310  }

◆ buildL0()

void InDet::InDetGeometryManagerTool::buildL0 ( )
private

creates L0 AlignModules for Silicon

Definition at line 313 of file InDetGeometryManagerTool.cxx.

314  {
315  ATH_MSG_INFO("Preparing the Silicon geometry for L0");
316  // ========================================
317  // Level 0 is just one module containing
318  // the whole Inner Detector (Pixel+SCT+TRT)
319 
320  Trk::AlignModule * indet = new Trk::AlignModule(this);
321  indet->setIdHash(getNextIDHash());
322  indet->setName("Inner Detector");
323 
324  // use the identifier of the Pixel for the whole Inner Detector at L0
325  indet->setIdentifier(m_pixHelper->wafer_id(0,0,0,0));
326 
327  // check if we're aligning Silicon
328  if(!moduleSelected(indet)) {
329  ATH_MSG_DEBUG("Module "<<indet->name()<<" NOT selected");
330  delete indet;
331  return;
332  }
333 
334  ATH_MSG_DEBUG("Created module "<<indet->name()<<" idHash: "<<indet->identifyHash()<<" identifier: "<<indet->identify());
335 
336  // for L0 alignment the alignment frame is equal to the global frame
337  // and since the PIXEL and SCT detector element positions are also stored
338  // in the global frame in DB, transform is identity
339  const Amg::Transform3D transform = Amg::Transform3D::Identity();
340 
341 
342  // PIXEL
343  // get maximum number of elements from the helper
344  unsigned int pixelmaxHash = m_pixHelper->wafer_hash_max();
345  ATH_MSG_DEBUG("maxHash for the Pixel: "<<pixelmaxHash);
346 
348  m_idHashToAlignModuleMapsPtr->at(Trk::AlignModule::Pixel) = new Trk::AlignModuleList((size_t)(pixelmaxHash),nullptr);
350 
351  // ==================================================================
352  // loop over Pixel elements and add them to respective alignModules
353  // ==================================================================
354  for (unsigned int index = 0; index < pixelmaxHash; index++) {
355  IdentifierHash idHash = index;
356  Identifier id = m_pixHelper->wafer_id(idHash);
357 
358  ATH_MSG_DEBUG(" Pixel DetectorElement idhash: "<<index);
359  ATH_MSG_DEBUG(" DetectorElement id: "<<id);
360 
361  // get the element via hash
363  if (element2) {
364  const Trk::TrkDetElementBase * element = (const Trk::TrkDetElementBase*) element2;
365 
366  // get element location for debugging
367  // HepGeom::Point3D<double> center = element->transform() * HepGeom::Point3D<double>();
368  // ATH_MSG_DEBUG(" DetectorElement idhash: " << index);
369  // ATH_MSG_DEBUG(" DetectorElement id: " << id << " with center = " << center);
370  // ATH_MSG_DEBUG(" Is Barrel: "<< m_pixHelper->is_barrel(id));
371 
372  // add element to respective AlignModule
373 
374  // add to the pixel structure
375  if(msgLvl(MSG::DEBUG)) {
376  if (m_pixHelper->is_barrel(id))
377  msg(MSG::DEBUG)<<"... Pixel barrel element"<<endmsg;
378  else
379  msg(MSG::DEBUG)<<"... Pixel endcap element"<<endmsg;
380  }
382 
383  // and fill the corresponding map
384  (*pixelIdHashMap)[idHash] = indet;
385  }
386  else
387  ATH_MSG_DEBUG("No Pixel detector with id: "<<id);
388  }
389 
390  // SCT
391  // get maximum number of elements from the helper
392  unsigned int sctmaxHash = m_sctHelper->wafer_hash_max();
393  ATH_MSG_DEBUG("maxHash for the SCT: "<<sctmaxHash);
394 
396  m_idHashToAlignModuleMapsPtr->at(Trk::AlignModule::SCT) = new Trk::AlignModuleList((size_t)(sctmaxHash),nullptr);
398 
399  // ================================================================
400  // loop over SCT elements and add them to respective alignModules
401  // ================================================================
402  for (unsigned int index = 0; index < sctmaxHash; index++) {
403  IdentifierHash idHash = index;
404  Identifier id = m_sctHelper->wafer_id(idHash);
405 
406  ATH_MSG_DEBUG(" SCT DetectorElement idhash: "<<index);
407  ATH_MSG_DEBUG(" DetectorElement id: "<<id);
408 
409  // get the element via hash
411  if (element2) {
412  const Trk::TrkDetElementBase * element = (const Trk::TrkDetElementBase*) element2;
413 
414  // add element to respective AlignModule
415 
416  // add to the sct barrel structure
417  if(msgLvl(MSG::DEBUG)) {
418  if (m_sctHelper->is_barrel(id))
419  msg(MSG::DEBUG)<<"... SCT barrel element"<<endmsg;
420  else
421  msg(MSG::DEBUG)<<"... SCT endcap element"<<endmsg;
422  }
424 
425  // and fill the corresponding map
426  (*sctIdHashMap)[idHash] = indet;
427  }
428  else
429  ATH_MSG_DEBUG("No SCT detector with id: "<<id);
430  }
431 
432 
433  // TRT
434  // get maximum number of elements from the helper
435  unsigned int trtmaxHash = m_trtHelper->straw_layer_hash_max();
436  ATH_MSG_DEBUG("maxHash for the TRT "<<trtmaxHash);
437 
439  m_idHashToAlignModuleMapsPtr->at(Trk::AlignModule::TRT) = new Trk::AlignModuleList((size_t)(trtmaxHash),nullptr);
441 
442  // ================================================================
443  // loop over TRT elements and add them to respective alignModules
444  // ================================================================
445  for (unsigned int index = 0; index < trtmaxHash; index++) {
446  IdentifierHash idHash = index;
447  Identifier id = m_trtHelper->layer_id(idHash);
448 
449  // get the element via hash
450  const TRT_BaseElement * element = m_trtDetManager->getElement(idHash);
451  if (element) {
452  // get element location for debugging
453 // HepGeom::Point3D<double> center = element->transform() * HepGeom::Point3D<double>();
454 // ATH_MSG_DEBUG(" TRTDetectorElement id: " << id << " with center = " << center);
455 
456  // add element to respective AlignModule
457 
458  // add to the Inner Detector structure
459  if(msgLvl(MSG::DEBUG)) {
460  if (m_trtHelper->is_barrel(id))
461  msg(MSG::DEBUG)<<"... TRT barrel element"<<endmsg;
462  else
463  msg(MSG::DEBUG)<<"... TRT endcap element"<<endmsg;
464  }
466 
467  // and fill the corresponding map
468  (*trtIdHashMap)[idHash] = indet;
469  }
470  else
471  ATH_MSG_DEBUG("No TRTDetectorElement with id: "<<id);
472  }
473 
474  // add created module to the geometry
475  m_alignModuleListPtr->push_back(indet);
476 
477  ATH_MSG_DEBUG("Inner Detector L0 module successfully added to the list");
478  }

◆ checkAlignLevel()

bool InDet::InDetGeometryManagerTool::checkAlignLevel ( )
virtual

check whether the alignment level is correct

Reimplemented from Trk::IGeometryManagerTool.

Definition at line 177 of file InDetGeometryManagerTool.cxx.

178  {
179  switch(m_alignLevel) {
180 
181  case 0:
182  // for L0 we don't need the other two managers so everything is ok
183  ATH_MSG_INFO("Setting up level 0 alignment of the InnerDetector");
184  break;
185 
186  case 1: case 2: case 3:
187  // for levels 1,2,3 we need the managers and we have to
188  // set the levels in them
189  if( (m_siGeoManager.empty() && m_alignSi) || (m_trtGeoManager.empty() && m_alignTRT) ) {
190  ATH_MSG_ERROR("SiliconGeometryManagerTool and/or TRTGeometryManagerTool not available");
191  ATH_MSG_ERROR("Can't set alignment geometry. ");
192  return false;
193  }
194 
195  ATH_MSG_INFO("Setting up level "<<m_alignLevel<<" alignment of the Inner Detector");
196  m_siGeoManager->setAlignLevel(m_alignLevel);
197  m_trtGeoManager->setAlignLevel(m_alignLevel);
198 
199  // we also check that the managers support the levels
200  if( (m_alignSi && !m_siGeoManager->checkAlignLevel()) || (m_alignTRT && !m_trtGeoManager->checkAlignLevel()) )
201  return false;
202  break;
203 
204  case -1:
205  // if level is not set here (=-1) we need the Silicon and TRT
206  // managers but we trust their setup, we don't need to check it
207  if( (m_siGeoManager.empty() && m_alignSi) || (m_trtGeoManager.empty() && m_alignTRT) ) {
208  ATH_MSG_ERROR("SiGeometryManagerTool and/or TRTGeometryManagerTool not available");
209  ATH_MSG_ERROR("Can't set alignment geometry. ");
210  return false;
211  }
212  break;
213 
214  default:
215  ATH_MSG_ERROR("Unknown alignment level "<<m_alignLevel<<". Can't set alignment geometry.");
216  return false;
217 
218  }
219 
220  return true;
221  }

◆ checkAlignLevelBarrel()

virtual bool Trk::IGeometryManagerTool::checkAlignLevelBarrel ( )
inlinevirtualinherited

check whether the alignment level is allowed

Reimplemented in InDet::PixelGeometryManagerTool, InDet::SCTGeometryManagerTool, and InDet::TRTGeometryManagerTool.

Definition at line 92 of file IGeometryManagerTool.h.

92 { return true; }

◆ checkAlignLevelEndcaps()

virtual bool Trk::IGeometryManagerTool::checkAlignLevelEndcaps ( )
inlinevirtualinherited

check whether the alignment level is allowed

Reimplemented in InDet::PixelGeometryManagerTool, InDet::SCTGeometryManagerTool, and InDet::TRTGeometryManagerTool.

Definition at line 101 of file IGeometryManagerTool.h.

101 { return true; }

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKeyArray>

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleBase>

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ dumpGeometry()

void InDet::InDetGeometryManagerTool::dumpGeometry ( )
private

print basic geometry info to screen

Definition at line 576 of file InDetGeometryManagerTool.cxx.

577  {
578  ATH_MSG_INFO("---------------------------------------------------");
579  ATH_MSG_INFO("Summary of the alignment geometry");
580  ATH_MSG_INFO("Number of alignable objects: "<< m_alignModuleList.size());
581  for(unsigned int i=0;i<m_alignModuleList.size();i++) {
583  ATH_MSG_INFO(i<<". "<< module->name());
584  ATH_MSG_INFO(" - identifier: "<<module->identify());
585  ATH_MSG_INFO(" - identifierHash: "<<module->identifyHash());
586  int npix(0);
587  int nsct(0);
588  int ntrt(0);
589  if(module->detElementCollection(Trk::AlignModule::Pixel)) {
590  npix = module->detElementCollection(Trk::AlignModule::Pixel)->size();
591  ATH_MSG_INFO(" - has "<<npix<<" Pixel modules");
592  }
593  if(module->detElementCollection(Trk::AlignModule::SCT)) {
594  nsct = module->detElementCollection(Trk::AlignModule::SCT)->size();
595  ATH_MSG_INFO(" - has "<<nsct<<" SCT modules");
596  }
597  if(module->detElementCollection(Trk::AlignModule::TRT)) {
598  ntrt = module->detElementCollection(Trk::AlignModule::TRT)->size();
599  ATH_MSG_INFO(" - has "<<ntrt<<" TRT modules");
600  }
601  if(npix && nsct)
602  ATH_MSG_INFO(" - has "<<npix+nsct<<" Silicon modules in total");
603  if((npix || nsct) && ntrt)
604  ATH_MSG_INFO(" - has "<<npix+nsct+ntrt<<" Inner Detector modules in total");
605 
606  Amg::Transform3D localtoglobal = (module->globalFrameToAlignFrame()).inverse();
607  ATH_MSG_DEBUG(" - local to global : "<<std::setprecision(12)<<localtoglobal.translation()<<" "<<localtoglobal.rotation());
608 
610  int npars = pars->size();
611  ATH_MSG_DEBUG(" - number of active transform parameters: "<<npars);
612  for(int j=0;j<npars;j++)
613  ATH_MSG_DEBUG(" * par "<<j<<": sigma = "<<(*pars)[j]->sigma());
614  }
615  ATH_MSG_INFO("---------------------------------------------------");
616  }

◆ evtStore() [1/2]

ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( ) const
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase &  ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ finalize()

StatusCode InDet::InDetGeometryManagerTool::finalize ( )
virtual

Implements Trk::IGeometryManagerTool.

Definition at line 169 of file InDetGeometryManagerTool.cxx.

170  {
171  ATH_MSG_DEBUG("finalize() of InDetGeometryManagerTool");
172 
173  return StatusCode::SUCCESS;
174  }

◆ getNextIDHash()

virtual int Trk::IGeometryManagerTool::getNextIDHash ( )
inlinevirtualinherited

get next free IDHash usable for new AlignModule

Definition at line 65 of file IGeometryManagerTool.h.

65 { return m_hashCounter++; };

◆ initialize()

StatusCode InDet::InDetGeometryManagerTool::initialize ( )
virtual

Implements Trk::IGeometryManagerTool.

Definition at line 108 of file InDetGeometryManagerTool.cxx.

109  {
110  ATH_MSG_DEBUG("initialize() of InDetGeometryManagerTool");
111 
112  // retrieve AlignModuleTool
113  ATH_CHECK( m_alignModuleTool.retrieve() );
114 
115  // retrieve Pixel helper
117 
118  // retrieve SCT helper
120 
121  // retrieve silicon helper
123 
124  // retrieve TRT helper
126 
127  // retrieve PIX detector manager
129 
130  // retrieve SCT detector manager
132 
133  // retrieve SCT detector manager
135 
136  // dump module selection
137  if(m_doModuleSelection && msgLvl(MSG::INFO)) {
138  unsigned int idx{0};
139  ATH_MSG_INFO("Creating geometry for selected "<<m_moduleSelection.size()<<" modules:");
140  for(const auto & i:m_moduleSelection)
141  ATH_MSG_INFO(" "<<idx++<<". "<<i);
142  }
143 
144  // retrieve SiGeometryManagerTool
145  if ( !m_siGeoManager.empty() ) {
146  ATH_CHECK ( m_siGeoManager.retrieve() );
147  }
148 
149  // retrieve TRTGeometryManagerTool
150  if ( !m_trtGeoManager.empty() ) {
151  ATH_CHECK ( m_trtGeoManager.retrieve() );
152  }
153 
154  if(!m_alignSi && !m_alignTRT && m_alignLevel!=0) {
155  ATH_MSG_FATAL("Alignment of both Silicon and TRT turned off. Aborting.");
156  return StatusCode::FAILURE;
157  }
158 
159  // check allowed alignment level
160  if(!checkAlignLevel()) {
161  ATH_MSG_FATAL("Wrong alignment level.");
162  return StatusCode::FAILURE;
163  }
164 
165  return StatusCode::SUCCESS;
166  }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ interfaceID()

const InterfaceID & IGeometryManagerTool::interfaceID ( )
inlinestaticinherited

Definition at line 121 of file IGeometryManagerTool.h.

121  {
122  return IID_TRKALIGNINTERFACES_IGeometryManagerTool;
123 }

◆ isOneDetOnly()

bool InDet::InDetGeometryManagerTool::isOneDetOnly ( const Trk::AlignModule mod,
Trk::AlignModule::DetectorType  dettype 
) const
private

check whether the module is of a single detector type

Definition at line 619 of file InDetGeometryManagerTool.cxx.

620  {
621  ATH_MSG_DEBUG("in isOneDetOnly for detector type "<<dettype);
622  const Trk::AlignModule::DetElementCollection * coll = mod->detElementCollection(dettype);
623  if(!coll || coll->size() == 0)
624  return false;
625 
626  int nelem(0);
627  for(int i=1;i<Trk::AlignModule::NDetectorTypes;i++) {
628  if(i==dettype)
629  continue;
630  coll = mod->detElementCollection((Trk::AlignModule::DetectorType)i);
631  if(coll)
632  nelem += coll->size();
633  }
634 
635  if(nelem)
636  return false;
637 
638  ATH_MSG_DEBUG("module IS of type "<<dettype);
639  return true;
640  }

◆ isSiOnly()

bool InDet::InDetGeometryManagerTool::isSiOnly ( const Trk::AlignModule mod) const
private

check whether the module is Silicon only

Definition at line 643 of file InDetGeometryManagerTool.cxx.

644  {
645  ATH_MSG_DEBUG("in isSiOnly");
646  const Trk::AlignModule::DetElementCollection * collPix = mod->detElementCollection(Trk::AlignModule::Pixel);
647  const Trk::AlignModule::DetElementCollection * collSCT = mod->detElementCollection(Trk::AlignModule::SCT);
648  if((!collPix || collPix->size()==0) && (!collSCT || collSCT->size()==0))
649  return false;
650 
651  int nelem(0);
652  for(int i=1;i<Trk::AlignModule::NDetectorTypes;i++) {
654  continue;
655  const Trk::AlignModule::DetElementCollection * coll = mod->detElementCollection((Trk::AlignModule::DetectorType)i);
656  if(coll)
657  nelem += coll->size();
658  }
659 
660  if(nelem)
661  return false;
662 
663  ATH_MSG_DEBUG("module IS of type Silicon");
664  return true;
665  }

◆ moduleSelected() [1/2]

bool InDet::InDetGeometryManagerTool::moduleSelected ( Trk::AlignModule mod)
private

check wheather module is selected for module pointer

Definition at line 570 of file InDetGeometryManagerTool.cxx.

571  {
572  return moduleSelected(mod->identify().get_compact());
573  }

◆ moduleSelected() [2/2]

bool InDet::InDetGeometryManagerTool::moduleSelected ( unsigned long long  modId)
private

check wheather module is selected for module id

Definition at line 562 of file InDetGeometryManagerTool.cxx.

563  {
564  if(!m_doModuleSelection) return true;
565  const bool found = (std::find(m_moduleSelection.begin(), m_moduleSelection.end(),id) != m_moduleSelection.end());
566  return found;
567  }

◆ msg() [1/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ outputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ PrintModPositions()

void InDet::InDetGeometryManagerTool::PrintModPositions ( )
inlinevirtual

Implements Trk::IGeometryManagerTool.

Definition at line 63 of file InDetGeometryManagerTool.h.

63 {};

◆ ReadGeometry()

int InDet::InDetGeometryManagerTool::ReadGeometry ( int  solveLevel)
virtual

read the geometry Method is called from the main AlignAlg to build the geometry based on the requested level of alignment.

It calls the other build() methods based on that.

Implements Trk::IGeometryManagerTool.

Definition at line 234 of file InDetGeometryManagerTool.cxx.

235  {
236  ATH_MSG_DEBUG("in ReadGeometry() solveLevel="<<solveLevel);
237 
238  // set pointers
241 
242  // build alignment geometry
243  buildGeometry();
244 
245  // now set the alignment parameters
246  // first prepare the parameter lists
249  // loop over modules
250  ATH_MSG_DEBUG("Adding module parameters to modules");
251  for( const auto & imod:m_alignModuleList) {
252  ATH_MSG_DEBUG("Module "<<imod->name());
254  }
255 
256  // set alignModuleList and hash table in the alignModuleTool
258  ATH_MSG_DEBUG(" geometry set in m_alignModuleTool");
259 
260  // set alignPar lists in the alignModuleTool
261  ATH_MSG_DEBUG(" alignParList = "<<m_alignParList);
262  ATH_MSG_DEBUG(" fullAlignParList = "<<m_fullAlignParList);
264  ATH_MSG_DEBUG(" AlignParLists set in m_alignModuleTool");
265 
266  // dump summary about the geometry setup
267  if (m_dumpGeometry)
268  dumpGeometry();
269 
270  int nDoF= m_alignModuleTool->nAlignParameters();
271  ATH_MSG_INFO("Total number of degrees of freedom: "<<nDoF);
272 
273  return nDoF;
274  }

◆ renounce()

std::enable_if_t<std::is_void_v<std::result_of_t<decltype(&T::renounce)(T)> > && !std::is_base_of_v<SG::VarHandleKeyArray, T> && std::is_base_of_v<Gaudi::DataHandle, T>, void> AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ setAlignLevel()

virtual void Trk::IGeometryManagerTool::setAlignLevel ( int  level)
inlinevirtualinherited

set alignment level

Reimplemented in InDet::PixelGeometryManagerTool, InDet::SCTGeometryManagerTool, and InDet::TRTGeometryManagerTool.

Definition at line 83 of file IGeometryManagerTool.h.

83 { m_alignLevel = level; }

◆ setAlignLevelBarrel()

virtual void Trk::IGeometryManagerTool::setAlignLevelBarrel ( int  level)
inlinevirtualinherited

set alignment level

Definition at line 89 of file IGeometryManagerTool.h.

◆ setAlignLevelEndcaps()

virtual void Trk::IGeometryManagerTool::setAlignLevelEndcaps ( int  level)
inlinevirtualinherited

set alignment level

Definition at line 98 of file IGeometryManagerTool.h.

◆ setFirstIDHash()

virtual void Trk::IGeometryManagerTool::setFirstIDHash ( unsigned int  idhash)
inlinevirtualinherited

set first free IDHash usable for new AlignModule

Definition at line 68 of file IGeometryManagerTool.h.

68 { m_hashCounter=idhash; };

◆ setHashMaps()

virtual void Trk::IGeometryManagerTool::setHashMaps ( std::vector< Trk::AlignModuleList * > *  maps)
inlinevirtualinherited

set pointer to vector of hashMaps to which the elements should be added to

Definition at line 74 of file IGeometryManagerTool.h.

◆ setLogStream()

void InDet::InDetGeometryManagerTool::setLogStream ( std::ostream *  os)
virtual

sets the output stream for the logfile

Reimplemented from Trk::IGeometryManagerTool.

Definition at line 224 of file InDetGeometryManagerTool.cxx.

225  {
226  m_logStream = os;
227  if (!m_siGeoManager.empty())
228  m_siGeoManager->setLogStream(m_logStream);
229  if (!m_trtGeoManager.empty())
230  m_trtGeoManager->setLogStream(m_logStream);
231  }

◆ setModuleList()

virtual void Trk::IGeometryManagerTool::setModuleList ( Trk::AlignModuleList list)
inlinevirtualinherited

set pointer to module list to which the modules should be added to

Definition at line 71 of file IGeometryManagerTool.h.

◆ setNtuple()

virtual void Trk::IGeometryManagerTool::setNtuple ( TFile *  )
inlinevirtualinherited

Sets output ntuple file, to be implemented if needed for detector-specific implementation.

Definition at line 52 of file IGeometryManagerTool.h.

52 {}

◆ setSigmas()

void InDet::InDetGeometryManagerTool::setSigmas ( Trk::AlignModule mod,
DataVector< Trk::AlignPar > *  modPars 
)
private

sets sigmas for modules

Definition at line 533 of file InDetGeometryManagerTool.cxx.

534  {
535  ATH_MSG_DEBUG("Setting sigmas for module: "<<module->name());
536  for(unsigned int ipar=0;ipar<modPars->size();++ipar)
537  switch(modPars->at(ipar)->paramType()) {
539  modPars->at(ipar)->setSigma(m_sigmaX);
540  break;
542  modPars->at(ipar)->setSigma(m_sigmaY);
543  break;
545  modPars->at(ipar)->setSigma(m_sigmaZ);
546  break;
548  modPars->at(ipar)->setSigma(m_sigmaRotX);
549  break;
551  modPars->at(ipar)->setSigma(m_sigmaRotY);
552  break;
554  modPars->at(ipar)->setSigma(m_sigmaRotZ);
555  break;
556  default:
557  break;
558  }
559  }

◆ StoreModPositions()

void InDet::InDetGeometryManagerTool::StoreModPositions ( std::string  )
inlinevirtual

Implements Trk::IGeometryManagerTool.

Definition at line 64 of file InDetGeometryManagerTool.h.

64 {};

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase &  )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308  {
309  // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310  // << " size: " << m_vhka.size() << endmsg;
311  for (auto &a : m_vhka) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_alignLevel

int Trk::IGeometryManagerTool::m_alignLevel = 0
protectedinherited

alignment level

Definition at line 115 of file IGeometryManagerTool.h.

◆ m_alignLevelBarrel

int Trk::IGeometryManagerTool::m_alignLevelBarrel = 0
protectedinherited

alignment level

Definition at line 116 of file IGeometryManagerTool.h.

◆ m_alignLevelEndcaps

int Trk::IGeometryManagerTool::m_alignLevelEndcaps = 0
protectedinherited

alignment level

Definition at line 117 of file IGeometryManagerTool.h.

◆ m_alignModuleList

Trk::AlignModuleList InDet::InDetGeometryManagerTool::m_alignModuleList
private

Definition at line 116 of file InDetGeometryManagerTool.h.

◆ m_alignModuleListPtr

Trk::AlignModuleList* Trk::IGeometryManagerTool::m_alignModuleListPtr = nullptr
protectedinherited

pointer to module list to which the modules are added

Definition at line 106 of file IGeometryManagerTool.h.

◆ m_alignModuleTool

ToolHandle<Trk::IAlignModuleTool> InDet::InDetGeometryManagerTool::m_alignModuleTool
private

pointer to AlignModuleTool

Definition at line 114 of file InDetGeometryManagerTool.h.

◆ m_alignParList

DataVector< DataVector<Trk::AlignPar> >* InDet::InDetGeometryManagerTool::m_alignParList
private

Definition at line 121 of file InDetGeometryManagerTool.h.

◆ m_alignRotX

bool InDet::InDetGeometryManagerTool::m_alignRotX
private

Definition at line 128 of file InDetGeometryManagerTool.h.

◆ m_alignRotY

bool InDet::InDetGeometryManagerTool::m_alignRotY
private

Definition at line 129 of file InDetGeometryManagerTool.h.

◆ m_alignRotZ

bool InDet::InDetGeometryManagerTool::m_alignRotZ
private

Definition at line 130 of file InDetGeometryManagerTool.h.

◆ m_alignSi

bool InDet::InDetGeometryManagerTool::m_alignSi
private

Definition at line 140 of file InDetGeometryManagerTool.h.

◆ m_alignTRT

bool InDet::InDetGeometryManagerTool::m_alignTRT
private

Definition at line 141 of file InDetGeometryManagerTool.h.

◆ m_alignX

bool InDet::InDetGeometryManagerTool::m_alignX
private

Definition at line 125 of file InDetGeometryManagerTool.h.

◆ m_alignY

bool InDet::InDetGeometryManagerTool::m_alignY
private

Definition at line 126 of file InDetGeometryManagerTool.h.

◆ m_alignZ

bool InDet::InDetGeometryManagerTool::m_alignZ
private

Definition at line 127 of file InDetGeometryManagerTool.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_doModuleSelection

bool InDet::InDetGeometryManagerTool::m_doModuleSelection
private

Definition at line 143 of file InDetGeometryManagerTool.h.

◆ m_dumpGeometry

bool InDet::InDetGeometryManagerTool::m_dumpGeometry
private

Definition at line 146 of file InDetGeometryManagerTool.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_fullAlignParList

DataVector< DataVector<Trk::AlignPar> >* InDet::InDetGeometryManagerTool::m_fullAlignParList
private

Definition at line 122 of file InDetGeometryManagerTool.h.

◆ m_hashCounter

int Trk::IGeometryManagerTool::m_hashCounter = 0
protectedinherited

variable for setting the idHash of the AlignModules

Definition at line 111 of file IGeometryManagerTool.h.

◆ m_idHashToAlignModuleMap

Trk::AlignModuleList InDet::InDetGeometryManagerTool::m_idHashToAlignModuleMap
private

Definition at line 117 of file InDetGeometryManagerTool.h.

◆ m_idHashToAlignModuleMaps

std::vector<Trk::AlignModuleList *> InDet::InDetGeometryManagerTool::m_idHashToAlignModuleMaps
private

Definition at line 119 of file InDetGeometryManagerTool.h.

◆ m_idHashToAlignModuleMapsPtr

std::vector<Trk::AlignModuleList *>* Trk::IGeometryManagerTool::m_idHashToAlignModuleMapsPtr = nullptr
protectedinherited

pointer to vector of hashMaps to which the elements are added

Definition at line 109 of file IGeometryManagerTool.h.

◆ m_logStream

std::ostream* Trk::IGeometryManagerTool::m_logStream = nullptr
protectedinherited

logfile output stream

Definition at line 113 of file IGeometryManagerTool.h.

◆ m_moduleSelection

std::vector<unsigned long long> InDet::InDetGeometryManagerTool::m_moduleSelection
private

Definition at line 144 of file InDetGeometryManagerTool.h.

◆ m_pixelDetManager

const InDetDD::PixelDetectorManager* InDet::InDetGeometryManagerTool::m_pixelDetManager
private

pointer to PIX detector manager

Definition at line 102 of file InDetGeometryManagerTool.h.

◆ m_pixHelper

const PixelID* InDet::InDetGeometryManagerTool::m_pixHelper
private

pointer to PIX detector manager

Definition at line 106 of file InDetGeometryManagerTool.h.

◆ m_sctDetManager

const InDetDD::SCT_DetectorManager* InDet::InDetGeometryManagerTool::m_sctDetManager
private

pointer to SCT detector manager

Definition at line 103 of file InDetGeometryManagerTool.h.

◆ m_sctHelper

const SCT_ID* InDet::InDetGeometryManagerTool::m_sctHelper
private

pointer to SCT detector manager

Definition at line 107 of file InDetGeometryManagerTool.h.

◆ m_siGeoManager

ToolHandle<Trk::IGeometryManagerTool> InDet::InDetGeometryManagerTool::m_siGeoManager
private

pointer to Silicon geometry manager

Definition at line 111 of file InDetGeometryManagerTool.h.

◆ m_sigmaRotX

double InDet::InDetGeometryManagerTool::m_sigmaRotX
private

Definition at line 135 of file InDetGeometryManagerTool.h.

◆ m_sigmaRotY

double InDet::InDetGeometryManagerTool::m_sigmaRotY
private

Definition at line 136 of file InDetGeometryManagerTool.h.

◆ m_sigmaRotZ

double InDet::InDetGeometryManagerTool::m_sigmaRotZ
private

Definition at line 137 of file InDetGeometryManagerTool.h.

◆ m_sigmaX

double InDet::InDetGeometryManagerTool::m_sigmaX
private

Definition at line 132 of file InDetGeometryManagerTool.h.

◆ m_sigmaY

double InDet::InDetGeometryManagerTool::m_sigmaY
private

Definition at line 133 of file InDetGeometryManagerTool.h.

◆ m_sigmaZ

double InDet::InDetGeometryManagerTool::m_sigmaZ
private

Definition at line 134 of file InDetGeometryManagerTool.h.

◆ m_siHelper

const SiliconID* InDet::InDetGeometryManagerTool::m_siHelper
private

pointer to Silicon detector manager

Definition at line 108 of file InDetGeometryManagerTool.h.

◆ m_trtDetManager

const InDetDD::TRT_DetectorManager* InDet::InDetGeometryManagerTool::m_trtDetManager
private

pointer to TRT detector manager

Definition at line 104 of file InDetGeometryManagerTool.h.

◆ m_trtGeoManager

ToolHandle<Trk::IGeometryManagerTool> InDet::InDetGeometryManagerTool::m_trtGeoManager
private

pointer to TRT geometry manager

Definition at line 112 of file InDetGeometryManagerTool.h.

◆ m_trtHelper

const TRT_ID* InDet::InDetGeometryManagerTool::m_trtHelper
private

pointer to TRT detector manager

Definition at line 109 of file InDetGeometryManagerTool.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files:
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
InDet::InDetGeometryManagerTool::m_sigmaRotY
double m_sigmaRotY
Definition: InDetGeometryManagerTool.h:136
InDet::InDetGeometryManagerTool::m_siGeoManager
ToolHandle< Trk::IGeometryManagerTool > m_siGeoManager
pointer to Silicon geometry manager
Definition: InDetGeometryManagerTool.h:111
make_hlt_rep.pars
pars
Definition: make_hlt_rep.py:90
InDet::InDetGeometryManagerTool::m_alignModuleList
Trk::AlignModuleList m_alignModuleList
Definition: InDetGeometryManagerTool.h:116
Trk::IGeometryManagerTool::m_alignLevelBarrel
int m_alignLevelBarrel
alignment level
Definition: IGeometryManagerTool.h:116
TRT_ID::layer_id
Identifier layer_id(int barrel_ec, int phi_module, int layer_or_wheel, int straw_layer) const
For an individual straw layer.
Definition: TRT_ID.h:500
InDet::InDetGeometryManagerTool::m_sigmaZ
double m_sigmaZ
Definition: InDetGeometryManagerTool.h:134
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
pdg_comparison.sigma
sigma
Definition: pdg_comparison.py:324
Trk::AlignModule::TRT
@ TRT
Definition: AlignModule.h:57
Trk::AlignModule::TransZ
@ TransZ
Definition: AlignModule.h:54
InDet::InDetGeometryManagerTool::m_alignTRT
bool m_alignTRT
Definition: InDetGeometryManagerTool.h:141
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
InDet::InDetGeometryManagerTool::m_alignRotY
bool m_alignRotY
Definition: InDetGeometryManagerTool.h:129
Trk::AlignModuleList
std::vector< AlignModule * > AlignModuleList
Definition: AlignModuleList.h:37
SG::VIEW_ELEMENTS
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
Definition: OwnershipPolicy.h:18
Trk::IGeometryManagerTool::m_hashCounter
int m_hashCounter
variable for setting the idHash of the AlignModules
Definition: IGeometryManagerTool.h:111
InDet::InDetGeometryManagerTool::m_pixelDetManager
const InDetDD::PixelDetectorManager * m_pixelDetManager
pointer to PIX detector manager
Definition: InDetGeometryManagerTool.h:102
index
Definition: index.py:1
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
TRT_ID::straw_layer_hash_max
size_type straw_layer_hash_max(void) const
Definition: TRT_ID.h:920
InDet::InDetGeometryManagerTool::m_moduleSelection
std::vector< unsigned long long > m_moduleSelection
Definition: InDetGeometryManagerTool.h:144
Trk::AlignModule::addDetElement
void addDetElement(AlignModule::DetectorType detType, const TrkDetElementBase *det, const Amg::Transform3D &transform, Identifier id=Identifier())
used to add a detector element to the align module with a align frame to detector element local frame...
Definition: AlignModule.cxx:126
InDet::InDetGeometryManagerTool::m_sctDetManager
const InDetDD::SCT_DetectorManager * m_sctDetManager
pointer to SCT detector manager
Definition: InDetGeometryManagerTool.h:103
InDet::InDetGeometryManagerTool::checkAlignLevel
bool checkAlignLevel()
check whether the alignment level is correct
Definition: InDetGeometryManagerTool.cxx:177
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
Trk::AlignModule
Definition: AlignModule.h:45
AthCommonMsg< AlgTool >::msgLvl
bool msgLvl(const MSG::Level lvl) const
Definition: AthCommonMsg.h:30
Trk::IGeometryManagerTool::m_alignLevelEndcaps
int m_alignLevelEndcaps
alignment level
Definition: IGeometryManagerTool.h:117
InDet::InDetGeometryManagerTool::isSiOnly
bool isSiOnly(const Trk::AlignModule *mod) const
check whether the module is Silicon only
Definition: InDetGeometryManagerTool.cxx:643
Trk::TrkDetElementBase
Definition: TrkDetElementBase.h:52
Trk::AlignModule::Pixel
@ Pixel
Definition: AlignModule.h:57
InDet::InDetGeometryManagerTool::m_alignZ
bool m_alignZ
Definition: InDetGeometryManagerTool.h:127
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
InDet::InDetGeometryManagerTool::m_alignRotZ
bool m_alignRotZ
Definition: InDetGeometryManagerTool.h:130
Trk::AlignModule::NDetectorTypes
@ NDetectorTypes
Definition: AlignModule.h:57
InDetDD::SCT_DetectorManager::getDetectorElement
virtual SiDetectorElement * getDetectorElement(const Identifier &id) const override
access to individual elements via Identifier
Definition: SCT_DetectorManager.cxx:64
Trk::AlignPar::paramType
AlignModule::TransformParameters paramType() const
returns the type of parameter (i.e.
Definition: AlignPar.h:47
PixelID::wafer_id
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
Definition: PixelID.h:364
InDet::InDetGeometryManagerTool::m_siHelper
const SiliconID * m_siHelper
pointer to Silicon detector manager
Definition: InDetGeometryManagerTool.h:108
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
InDet::InDetGeometryManagerTool::m_fullAlignParList
DataVector< DataVector< Trk::AlignPar > > * m_fullAlignParList
Definition: InDetGeometryManagerTool.h:122
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
Trk::IGeometryManagerTool::m_alignLevel
int m_alignLevel
alignment level
Definition: IGeometryManagerTool.h:115
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:27
InDet::InDetGeometryManagerTool::m_alignParList
DataVector< DataVector< Trk::AlignPar > > * m_alignParList
Definition: InDetGeometryManagerTool.h:121
python.PyAthena.module
module
Definition: PyAthena.py:131
InDet::InDetGeometryManagerTool::m_sigmaY
double m_sigmaY
Definition: InDetGeometryManagerTool.h:133
PixelID::is_barrel
bool is_barrel(const Identifier &id) const
Test for barrel - WARNING: id MUST be pixel id, otherwise answer is not accurate. Use SiliconID for g...
Definition: PixelID.h:605
InDet::InDetGeometryManagerTool::setSigmas
void setSigmas(Trk::AlignModule *mod, DataVector< Trk::AlignPar > *modPars)
sets sigmas for modules
Definition: InDetGeometryManagerTool.cxx:533
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
Trk::AlignPar::setSigma
void setSigma(double sigma)
sets sigma
Definition: AlignPar.h:87
AthCommonDataStore
Definition: AthCommonDataStore.h:52
InDet::InDetGeometryManagerTool::moduleSelected
bool moduleSelected(Trk::AlignModule *mod)
check wheather module is selected for module pointer
Definition: InDetGeometryManagerTool.cxx:570
Trk::AlignModule::setName
void setName(const std::string &name)
Set and return name of align module (i.e.
Definition: AlignModule.h:88
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
Trk::IGeometryManagerTool::m_alignModuleListPtr
Trk::AlignModuleList * m_alignModuleListPtr
pointer to module list to which the modules are added
Definition: IGeometryManagerTool.h:106
maskDeadModules.mod
mod
Definition: maskDeadModules.py:36
Trk::AlignModule::setIdentifier
void setIdentifier(Identifier identifier)
Set and return identifier of module.
Definition: AlignModule.h:96
lumiFormat.i
int i
Definition: lumiFormat.py:85
InDet::InDetGeometryManagerTool::m_sctHelper
const SCT_ID * m_sctHelper
pointer to SCT detector manager
Definition: InDetGeometryManagerTool.h:107
SG::OWN_ELEMENTS
@ OWN_ELEMENTS
this data object owns its elements
Definition: OwnershipPolicy.h:17
Trk::IGeometryManagerTool::getNextIDHash
virtual int getNextIDHash()
get next free IDHash usable for new AlignModule
Definition: IGeometryManagerTool.h:65
Trk::AlignModule::identifyHash
IdentifierHash identifyHash() const
Set and return index of module, used by alignment classes to keep track of order of align module.
Definition: AlignModule.h:92
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
MuonR4::inverse
CalibratedSpacePoint::Covariance_t inverse(const CalibratedSpacePoint::Covariance_t &mat)
Inverts the parsed matrix.
Definition: MuonSpectrometer/MuonPhaseII/Event/MuonSpacePoint/src/UtilFunctions.cxx:65
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
InDet::InDetGeometryManagerTool::m_trtHelper
const TRT_ID * m_trtHelper
pointer to TRT detector manager
Definition: InDetGeometryManagerTool.h:109
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
Amg::transform
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
Definition: GeoPrimitivesHelpers.h:156
Trk::AlignPar
Definition: AlignPar.h:25
test_pyathena.parent
parent
Definition: test_pyathena.py:15
Trk::AlignModule::RotX
@ RotX
Definition: AlignModule.h:54
InDet::InDetGeometryManagerTool::dumpGeometry
void dumpGeometry()
print basic geometry info to screen
Definition: InDetGeometryManagerTool.cxx:576
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
Trk::AlignModule::SCT
@ SCT
Definition: AlignModule.h:57
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
InDet::InDetGeometryManagerTool::m_sigmaRotX
double m_sigmaRotX
Definition: InDetGeometryManagerTool.h:135
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
Trk::AlignModule::DetElementCollection
std::vector< const TrkDetElementBase * > DetElementCollection
typedefs to contain detector element pointers and transforms
Definition: AlignModule.h:60
AthAlgTool::AthAlgTool
AthAlgTool()
Default constructor:
Trk::AlignModule::name
const std::string & name() const
Definition: AlignModule.h:89
InDet::InDetGeometryManagerTool::addModuleParameters
void addModuleParameters(Trk::AlignModule *module, DataVector< DataVector< Trk::AlignPar > > *allFullModPars, DataVector< DataVector< Trk::AlignPar > > *allActiveModPars)
adds alignment parameters for the module checks for active parameters and calls setSigmas()
Definition: InDetGeometryManagerTool.cxx:481
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
InDet::InDetGeometryManagerTool::m_idHashToAlignModuleMaps
std::vector< Trk::AlignModuleList * > m_idHashToAlignModuleMaps
Definition: InDetGeometryManagerTool.h:119
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
SCT_ID::wafer_hash_max
size_type wafer_hash_max(void) const
Definition: SCT_ID.cxx:636
Trk::AlignModule::DetectorType
DetectorType
Definition: AlignModule.h:57
InDetDD::TRT_DetectorManager::getElement
const TRT_BaseElement * getElement(Identifier id) const
Access Elements Generically---------------------------------------------—.
Definition: TRT_DetectorManager.cxx:148
InDet::InDetGeometryManagerTool::m_trtGeoManager
ToolHandle< Trk::IGeometryManagerTool > m_trtGeoManager
pointer to TRT geometry manager
Definition: InDetGeometryManagerTool.h:112
InDet::InDetGeometryManagerTool::m_dumpGeometry
bool m_dumpGeometry
Definition: InDetGeometryManagerTool.h:146
InDetDD::SiDetectorElement
Definition: SiDetectorElement.h:109
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
PixelID::wafer_hash_max
size_type wafer_hash_max(void) const
Definition: PixelID.cxx:907
Trk::IGeometryManagerTool::m_logStream
std::ostream * m_logStream
logfile output stream
Definition: IGeometryManagerTool.h:113
InDet::InDetGeometryManagerTool::m_alignSi
bool m_alignSi
Definition: InDetGeometryManagerTool.h:140
InDet::InDetGeometryManagerTool::m_pixHelper
const PixelID * m_pixHelper
pointer to PIX detector manager
Definition: InDetGeometryManagerTool.h:106
Trk::AlignModule::setIdHash
void setIdHash(IdentifierHash id)
Definition: AlignModule.h:93
Trk::AlignModule::TransX
@ TransX
Definition: AlignModule.h:54
InDet::InDetGeometryManagerTool::m_sigmaRotZ
double m_sigmaRotZ
Definition: InDetGeometryManagerTool.h:137
DeMoScan.index
string index
Definition: DeMoScan.py:364
TRT_ID::is_barrel
bool is_barrel(const Identifier &id) const
Test for barrel.
Definition: TRT_ID.h:857
a
TList * a
Definition: liststreamerinfos.cxx:10
h
CondAlgsOpts.found
int found
Definition: CondAlgsOpts.py:101
Trk::IGeometryManagerTool::m_idHashToAlignModuleMapsPtr
std::vector< Trk::AlignModuleList * > * m_idHashToAlignModuleMapsPtr
pointer to vector of hashMaps to which the elements are added
Definition: IGeometryManagerTool.h:109
InDet::InDetGeometryManagerTool::m_doModuleSelection
bool m_doModuleSelection
Definition: InDetGeometryManagerTool.h:143
Trk::AlignModule::RotY
@ RotY
Definition: AlignModule.h:54
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
DEBUG
#define DEBUG
Definition: page_access.h:11
InDet::InDetGeometryManagerTool::m_alignX
bool m_alignX
Definition: InDetGeometryManagerTool.h:125
AthCommonMsg< AlgTool >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
InDet::InDetGeometryManagerTool::m_sigmaX
double m_sigmaX
Definition: InDetGeometryManagerTool.h:132
InDet::InDetGeometryManagerTool::m_alignY
bool m_alignY
Definition: InDetGeometryManagerTool.h:126
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:623
InDet::InDetGeometryManagerTool::m_alignRotX
bool m_alignRotX
Definition: InDetGeometryManagerTool.h:128
InDet::InDetGeometryManagerTool::buildL0
void buildL0()
creates L0 AlignModules for Silicon
Definition: InDetGeometryManagerTool.cxx:313
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
DataVector::at
const T * at(size_type n) const
Access an element, as an rvalue.
SCT_ID::wafer_id
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int side) const
For a single side of module.
Definition: SCT_ID.h:464
Trk::AlignModule::RotZ
@ RotZ
Definition: AlignModule.h:54
InDet::InDetGeometryManagerTool::buildGeometry
void buildGeometry()
builds geometry for Silicon alignment
Definition: InDetGeometryManagerTool.cxx:277
InDet::InDetGeometryManagerTool::isOneDetOnly
bool isOneDetOnly(const Trk::AlignModule *mod, Trk::AlignModule::DetectorType dettype) const
check whether the module is of a single detector type
Definition: InDetGeometryManagerTool.cxx:619
Trk::AlignModule::TransY
@ TransY
Definition: AlignModule.h:54
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
Trk::AlignModule::identify
Identifier identify() const
Definition: AlignModule.h:97
InDet::InDetGeometryManagerTool::m_alignModuleTool
ToolHandle< Trk::IAlignModuleTool > m_alignModuleTool
pointer to AlignModuleTool
Definition: InDetGeometryManagerTool.h:114
InDet::InDetGeometryManagerTool::m_trtDetManager
const InDetDD::TRT_DetectorManager * m_trtDetManager
pointer to TRT detector manager
Definition: InDetGeometryManagerTool.h:104
fitman.k
k
Definition: fitman.py:528
InDetDD::TRT_BaseElement
Definition: TRT_BaseElement.h:57
SCT_ID::is_barrel
bool is_barrel(const Identifier &id) const
Test for barrel - WARNING: id MUST be sct id, otherwise answer is not accurate. Use SiliconID for gen...
Definition: SCT_ID.h:721
InDetDD::PixelDetectorManager::getDetectorElement
virtual SiDetectorElement * getDetectorElement(const Identifier &id) const override
access to individual elements : via Identifier
Definition: PixelDetectorManager.cxx:80
Identifier
Definition: IdentifierFieldParser.cxx:14