|
ATLAS Offline Software
|
#include <InDetGeometryManagerTool.h>
|
| 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 |
|
Definition at line 47 of file InDetGeometryManagerTool.h.
◆ StoreGateSvc_t
◆ InDetGeometryManagerTool()
InDet::InDetGeometryManagerTool::InDetGeometryManagerTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~InDetGeometryManagerTool()
InDet::InDetGeometryManagerTool::~InDetGeometryManagerTool |
( |
| ) |
|
|
virtual |
◆ addModuleParameters()
◆ alignLevel()
virtual int Trk::IGeometryManagerTool::alignLevel |
( |
| ) |
|
|
inlinevirtualinherited |
◆ alignLevelBarrel()
virtual int Trk::IGeometryManagerTool::alignLevelBarrel |
( |
| ) |
|
|
inlinevirtualinherited |
◆ alignLevelEndcaps()
virtual int Trk::IGeometryManagerTool::alignLevelEndcaps |
( |
| ) |
|
|
inlinevirtualinherited |
◆ buildGeometry()
void InDet::InDetGeometryManagerTool::buildGeometry |
( |
| ) |
|
|
virtual |
◆ buildL0()
void InDet::InDetGeometryManagerTool::buildL0 |
( |
| ) |
|
|
private |
creates L0 AlignModules for Silicon
Definition at line 313 of file InDetGeometryManagerTool.cxx.
322 indet->
setName(
"Inner Detector");
355 IdentifierHash idHash =
index;
384 (*pixelIdHashMap)[idHash] = indet;
403 IdentifierHash idHash =
index;
426 (*sctIdHashMap)[idHash] = indet;
446 IdentifierHash idHash =
index;
468 (*trtIdHashMap)[idHash] = indet;
477 ATH_MSG_DEBUG(
"Inner Detector L0 module successfully added to the list");
◆ checkAlignLevel()
bool InDet::InDetGeometryManagerTool::checkAlignLevel |
( |
| ) |
|
|
virtual |
◆ checkAlignLevelBarrel()
virtual bool Trk::IGeometryManagerTool::checkAlignLevelBarrel |
( |
| ) |
|
|
inlinevirtualinherited |
◆ checkAlignLevelEndcaps()
virtual bool Trk::IGeometryManagerTool::checkAlignLevelEndcaps |
( |
| ) |
|
|
inlinevirtualinherited |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation 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.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation 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.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation 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.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation 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.
◆ declareProperty() [6/6]
◆ detStore()
◆ dumpGeometry()
void InDet::InDetGeometryManagerTool::dumpGeometry |
( |
| ) |
|
|
private |
print basic geometry info to screen
Definition at line 576 of file InDetGeometryManagerTool.cxx.
578 ATH_MSG_INFO(
"---------------------------------------------------");
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");
607 ATH_MSG_DEBUG(
" - local to global : "<<std::setprecision(12)<<localtoglobal.translation()<<
" "<<localtoglobal.rotation());
610 int npars =
pars->size();
611 ATH_MSG_DEBUG(
" - number of active transform parameters: "<<npars);
612 for(
int j=0;j<npars;j++)
615 ATH_MSG_INFO(
"---------------------------------------------------");
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
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 |
◆ getNextIDHash()
virtual int Trk::IGeometryManagerTool::getNextIDHash |
( |
| ) |
|
|
inlinevirtualinherited |
◆ initialize()
StatusCode InDet::InDetGeometryManagerTool::initialize |
( |
| ) |
|
|
virtual |
◆ inputHandles()
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 |
◆ isOneDetOnly()
check whether the module is of a single detector type
Definition at line 619 of file InDetGeometryManagerTool.cxx.
621 ATH_MSG_DEBUG(
"in isOneDetOnly for detector type "<<dettype);
623 if(!coll || coll->size() == 0)
632 nelem += coll->size();
◆ isSiOnly()
check whether the module is Silicon only
Definition at line 643 of file InDetGeometryManagerTool.cxx.
648 if((!collPix || collPix->size()==0) && (!collSCT || collSCT->size()==0))
657 nelem += coll->size();
◆ moduleSelected() [1/2]
◆ moduleSelected() [2/2]
bool InDet::InDetGeometryManagerTool::moduleSelected |
( |
unsigned long long |
modId | ) |
|
|
private |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
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 |
◆ ReadGeometry()
int InDet::InDetGeometryManagerTool::ReadGeometry |
( |
int |
solveLevel | ) |
|
|
virtual |
◆ renounce()
◆ renounceArray()
◆ setAlignLevel()
virtual void Trk::IGeometryManagerTool::setAlignLevel |
( |
int |
level | ) |
|
|
inlinevirtualinherited |
◆ setAlignLevelBarrel()
virtual void Trk::IGeometryManagerTool::setAlignLevelBarrel |
( |
int |
level | ) |
|
|
inlinevirtualinherited |
◆ setAlignLevelEndcaps()
virtual void Trk::IGeometryManagerTool::setAlignLevelEndcaps |
( |
int |
level | ) |
|
|
inlinevirtualinherited |
◆ setFirstIDHash()
virtual void Trk::IGeometryManagerTool::setFirstIDHash |
( |
unsigned int |
idhash | ) |
|
|
inlinevirtualinherited |
◆ setHashMaps()
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 |
◆ setModuleList()
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.
◆ setSigmas()
◆ StoreModPositions()
void InDet::InDetGeometryManagerTool::StoreModPositions |
( |
std::string |
| ) |
|
|
inlinevirtual |
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_alignLevel
int Trk::IGeometryManagerTool::m_alignLevel = 0 |
|
protectedinherited |
◆ m_alignLevelBarrel
int Trk::IGeometryManagerTool::m_alignLevelBarrel = 0 |
|
protectedinherited |
◆ m_alignLevelEndcaps
int Trk::IGeometryManagerTool::m_alignLevelEndcaps = 0 |
|
protectedinherited |
◆ m_alignModuleList
◆ m_alignModuleListPtr
◆ m_alignModuleTool
◆ m_alignParList
◆ m_alignRotX
bool InDet::InDetGeometryManagerTool::m_alignRotX |
|
private |
◆ m_alignRotY
bool InDet::InDetGeometryManagerTool::m_alignRotY |
|
private |
◆ m_alignRotZ
bool InDet::InDetGeometryManagerTool::m_alignRotZ |
|
private |
◆ m_alignSi
bool InDet::InDetGeometryManagerTool::m_alignSi |
|
private |
◆ m_alignTRT
bool InDet::InDetGeometryManagerTool::m_alignTRT |
|
private |
◆ m_alignX
bool InDet::InDetGeometryManagerTool::m_alignX |
|
private |
◆ m_alignY
bool InDet::InDetGeometryManagerTool::m_alignY |
|
private |
◆ m_alignZ
bool InDet::InDetGeometryManagerTool::m_alignZ |
|
private |
◆ m_detStore
◆ m_doModuleSelection
bool InDet::InDetGeometryManagerTool::m_doModuleSelection |
|
private |
◆ m_dumpGeometry
bool InDet::InDetGeometryManagerTool::m_dumpGeometry |
|
private |
◆ m_evtStore
◆ m_fullAlignParList
◆ m_hashCounter
int Trk::IGeometryManagerTool::m_hashCounter = 0 |
|
protectedinherited |
◆ m_idHashToAlignModuleMap
◆ m_idHashToAlignModuleMaps
◆ m_idHashToAlignModuleMapsPtr
std::vector<Trk::AlignModuleList *>* Trk::IGeometryManagerTool::m_idHashToAlignModuleMapsPtr = nullptr |
|
protectedinherited |
◆ m_logStream
std::ostream* Trk::IGeometryManagerTool::m_logStream = nullptr |
|
protectedinherited |
◆ m_moduleSelection
std::vector<unsigned long long> InDet::InDetGeometryManagerTool::m_moduleSelection |
|
private |
◆ m_pixelDetManager
◆ m_pixHelper
◆ m_sctDetManager
◆ m_sctHelper
const SCT_ID* InDet::InDetGeometryManagerTool::m_sctHelper |
|
private |
◆ m_siGeoManager
◆ m_sigmaRotX
double InDet::InDetGeometryManagerTool::m_sigmaRotX |
|
private |
◆ m_sigmaRotY
double InDet::InDetGeometryManagerTool::m_sigmaRotY |
|
private |
◆ m_sigmaRotZ
double InDet::InDetGeometryManagerTool::m_sigmaRotZ |
|
private |
◆ m_sigmaX
double InDet::InDetGeometryManagerTool::m_sigmaX |
|
private |
◆ m_sigmaY
double InDet::InDetGeometryManagerTool::m_sigmaY |
|
private |
◆ m_sigmaZ
double InDet::InDetGeometryManagerTool::m_sigmaZ |
|
private |
◆ m_siHelper
◆ m_trtDetManager
◆ m_trtGeoManager
◆ m_trtHelper
const TRT_ID* InDet::InDetGeometryManagerTool::m_trtHelper |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
Identifier layer_id(int barrel_ec, int phi_module, int layer_or_wheel, int straw_layer) const
For an individual straw layer.
std::string find(const std::string &s)
return a remapped string
std::vector< AlignModule * > AlignModuleList
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
size_type straw_layer_hash_max(void) const
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...
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool msgLvl(const MSG::Level lvl) const
virtual SiDetectorElement * getDetectorElement(const Identifier &id) const override
access to individual elements via Identifier
AlignModule::TransformParameters paramType() const
returns the type of parameter (i.e.
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
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...
void setSigma(double sigma)
sets sigma
void setName(const std::string &name)
Set and return name of align module (i.e.
void setIdentifier(Identifier identifier)
Set and return identifier of module.
@ OWN_ELEMENTS
this data object owns its elements
IdentifierHash identifyHash() const
Set and return index of module, used by alignment classes to keep track of order of align module.
CalibratedSpacePoint::Covariance_t inverse(const CalibratedSpacePoint::Covariance_t &mat)
Inverts the parsed matrix.
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
std::vector< const TrkDetElementBase * > DetElementCollection
typedefs to contain detector element pointers and transforms
const std::string & name() const
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
size_type wafer_hash_max(void) const
const TRT_BaseElement * getElement(Identifier id) const
Access Elements Generically---------------------------------------------—.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
size_type wafer_hash_max(void) const
void setIdHash(IdentifierHash id)
bool is_barrel(const Identifier &id) const
Test for barrel.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
const T * at(size_type n) const
Access an element, as an rvalue.
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int side) const
For a single side of module.
size_type size() const noexcept
Returns the number of elements in the collection.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Identifier identify() const
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...
virtual SiDetectorElement * getDetectorElement(const Identifier &id) const override
access to individual elements : via Identifier