Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
The Detector Manager for all TRT Detector elements, it acts as the interface to the detector elements which can be retrieved from the TRT_DetectorManager either via numerology or Identifier access.
More...
#include <TRT_DetectorManager.h>
|
| TRT_DetectorManager (StoreGateSvc *detStore) |
|
| ~TRT_DetectorManager () |
|
virtual unsigned int | getNumTreeTops () const override |
| Access Raw Geometry:----------------------------------------------------—. More...
|
|
virtual PVConstLink | getTreeTop (unsigned int i) const override |
|
void | setIdHelper (const TRT_ID *idHelper, bool owns=true) |
| Get the ID helper: -----------------------------------------------------—. More...
|
|
ActiveGasType | gasType () const |
|
void | setGasType (const ActiveGasType &) |
|
unsigned int | digitizationVersion () const |
| Get and set information about digitization version ---------------------—. More...
|
|
const std::string & | digitizationVersionName () const |
|
void | setDigitizationVersion (const unsigned int &, const std::string &name) |
|
TRT_Numerology * | getNumerology () |
| Access Numerological information:---------------------------------------—. More...
|
|
const TRT_Numerology * | getNumerology () const |
|
const TRT_BaseElement * | getElement (Identifier id) const |
| Access Elements Generically---------------------------------------------—. More...
|
|
const TRT_BaseElement * | getElement (IdentifierHash id) const |
|
const TRT_DetElementContainer * | getDetectorElementContainer () const |
| Access the element container -------------------------------------------—. More...
|
|
const TRT_DetElementCollection * | getDetectorElementCollection () const |
| Access to Whole Collection of Elements ---------------------------------—. More...
|
|
TRT_DetElementCollection::const_iterator | getDetectorElementBegin () const |
|
TRT_DetElementCollection::const_iterator | getDetectorElementEnd () const |
|
const TRT_BarrelElement * | getBarrelElement (unsigned int positive, unsigned int moduleIndex, unsigned int phiIndex, unsigned int strawLayerIndex) const |
| Access Barrel Elements:---------------—(Fast)-------------------------—. More...
|
|
TRT_BarrelElement * | getBarrelElement (unsigned int positive, unsigned int moduleIndex, unsigned int phiIndex, unsigned int strawLayerIndex) |
|
const TRT_EndcapElement * | getEndcapElement (unsigned int positive, unsigned int wheelIndex, unsigned int strawLayerIndex, unsigned int phiIndex) const |
| Access Endcap Elements:---------------—(Fast)--------------------------—. More...
|
|
TRT_EndcapElement * | getEndcapElement (unsigned int positive, unsigned int wheelIndex, unsigned int strawLayerIndex, unsigned int phiIndex) |
|
const TRT_Conditions * | conditions () const |
| Conditions interface (mostly for internal use):-------------------------—. More...
|
|
void | addTreeTop (const PVLink &) |
|
void | manageBarrelElement (TRT_BarrelElement *barrel) |
|
void | manageEndcapElement (TRT_EndcapElement *endcap) |
|
void | setBarrelTransformField (size_t i, const GeoXF::Function *field) |
|
const GeoXF::Function * | barrelTransformField (size_t i) const |
|
void | setEndcapTransformField (size_t i, const GeoXF::Function *field) |
|
const GeoXF::Function * | endcapTransformField (size_t i) const |
|
void addKey | ATLAS_NOT_THREAD_SAFE (const std::string &key, int level) |
|
void | addKey (const std::string &key, int level, FrameType frame) |
|
void | addAlignableTransform (int level, const Identifier &id, GeoAlignableTransform *transform, const GeoVFullPhysVol *child=0, const GeoVFullPhysVol *frameVol=0) |
| Add alignable transforms: GeoModel/CLHEP based. More...
|
|
void | addAlignableTransform (int level, const Identifier &id, GeoAlignableTransform *transform, const GeoVPhysVol *child=0, const GeoVPhysVol *frameVol=0) |
| Add alignable transforms: GeoModel/CLHEP based. More...
|
|
virtual bool | setAlignableTransformDelta (int level, const Identifier &id, const Amg::Transform3D &delta, FrameType frame, GeoVAlignmentStore *alignStore) const override |
| Set alignable transforms: Amg based. More...
|
|
bool | setAlignableTransformAnyFrameDelta (ExtendedAlignableTransform *extXF, const Amg::Transform3D &delta, FrameType frame, GeoVAlignmentStore *alignStore) const |
| Set alignable transforms: Amg based. More...
|
|
virtual void | invalidateAll () const override |
| Invalidate cache for all detector elements. More...
|
|
virtual void | updateAll () const override |
| Update all caches. More...
|
|
virtual bool | identifierBelongs (const Identifier &id) const override |
| Check identifier is for this detector. More...
|
|
StatusCode | alignmentCallback (IOVSVC_CALLBACK_ARGS) |
| Call back for alignment updates, DEPRECATED. More...
|
|
virtual bool | processGlobalAlignment (const std::string &, int level, FrameType frame, const CondAttrListCollection *obj, GeoVAlignmentStore *alignStore) const override |
| Process new global DB folders for L1 and L2. More...
|
|
bool | processSpecialAlignment (const std::string &key, InDetDD::AlignFolderType dummy) const override |
|
bool | processSpecialAlignment (const std::string &key, const CondAttrListCollection *obj=nullptr, GeoVAlignmentStore *alignStore=nullptr) const override |
|
void | setBarrelDescriptor (const TRT_BarrelDescriptor *barrelDescriptor) |
| Set TRT_Barrel/EndcapDescriptor pointer to the internal sets to delete them in the destructor. More...
|
|
void | setEndcapDescriptor (const TRT_EndcapDescriptor *endcapDescriptor) |
|
const Version & | getVersion () const |
| Get version information. More...
|
|
const std::string & | getLayout () const |
|
void | setVersion (const Version &version) |
|
void | addChannel (const std::string &key, int level, FrameType frame) |
| Alignment access. More...
|
|
void | addFolder (const std::string &key) |
|
void | addSpecialFolder (const std::string &key) |
|
void | addGlobalFolder (const std::string &key) |
|
void | addAlignFolderType (const AlignFolderType alignfolder) |
|
StatusCode | align (IOVSVC_CALLBACK_ARGS) const |
|
StatusCode | align (const RawAlignmentObjects &alignObjects, GeoVAlignmentStore *alignStore) const |
|
bool | msgLvl (const MSG::Level lvl) const |
| Test the output level. More...
|
|
MsgStream & | msg () const |
| The standard message stream. More...
|
|
MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. More...
|
|
void | setLevel (MSG::Level lvl) |
| Change the current logging level. More...
|
|
const TRTCond::StrawDxContainer * | dxContainer () const |
|
The Detector Manager for all TRT Detector elements, it acts as the interface to the detector elements which can be retrieved from the TRT_DetectorManager either via numerology or Identifier access.
In addition, the alignable transforms are set via Identifer and forwarded to the GeoModel class; hence, we are sitting at the interface between CLHEP and AMG.
- Author
- Grant Gorfine modified & maintined: Nick Styles, Andreas Salzburger
Definition at line 66 of file TRT_DetectorManager.h.
◆ AlignableTransformMap
◆ ActiveGasType
◆ TRT_DetectorManager() [1/2]
InDetDD::TRT_DetectorManager::TRT_DetectorManager |
( |
StoreGateSvc * |
detStore | ) |
|
◆ ~TRT_DetectorManager()
InDetDD::TRT_DetectorManager::~TRT_DetectorManager |
( |
| ) |
|
◆ TRT_DetectorManager() [2/2]
◆ addAlignableTransform() [1/2]
void InDetDD::TRT_DetectorManager::addAlignableTransform |
( |
int |
level, |
|
|
const Identifier & |
id, |
|
|
GeoAlignableTransform * |
transform, |
|
|
const GeoVFullPhysVol * |
child = 0 , |
|
|
const GeoVFullPhysVol * |
frameVol = 0 |
|
) |
| |
Add alignable transforms: GeoModel/CLHEP based.
Definition at line 282 of file TRT_DetectorManager.cxx.
293 ExtendedAlignableTransform * extAlignableTransform =
new ExtendedAlignableTransform(
transform, child, frameVol);
296 if (child && !frameVol) {
298 }
else if (!child || child == frameVol ) {
◆ addAlignableTransform() [2/2]
void InDetDD::TRT_DetectorManager::addAlignableTransform |
( |
int |
level, |
|
|
const Identifier & |
id, |
|
|
GeoAlignableTransform * |
transform, |
|
|
const GeoVPhysVol * |
child = 0 , |
|
|
const GeoVPhysVol * |
frameVol = 0 |
|
) |
| |
Add alignable transforms: GeoModel/CLHEP based.
Definition at line 251 of file TRT_DetectorManager.cxx.
260 const GeoVFullPhysVol * childFPV =
nullptr;
262 childFPV =
dynamic_cast<const GeoVFullPhysVol *
>(child);
264 const GeoVFullPhysVol * frameFPV =
nullptr;
266 frameFPV =
dynamic_cast<const GeoVFullPhysVol *
>(frameVol);
268 if (child && !childFPV) {
270 <<
"Child of alignable transform is not a full physical volume"
272 }
else if (frameVol && !frameFPV) {
274 <<
"Frame for alignable transform is not a full physical volume"
◆ addAlignFolderType()
◆ addChannel()
void InDetDD::InDetDetectorManager::addChannel |
( |
const std::string & |
key, |
|
|
int |
level, |
|
|
FrameType |
frame |
|
) |
| |
|
inherited |
Alignment access.
Definition at line 56 of file InDetDetectorManager.cxx.
58 std::string frameStr =
"other";
62 <<
", with frame " << frameStr <<
".");
◆ addFolder()
void InDetDD::InDetDetectorManager::addFolder |
( |
const std::string & |
key | ) |
|
|
inherited |
◆ addGlobalFolder()
void InDetDD::InDetDetectorManager::addGlobalFolder |
( |
const std::string & |
key | ) |
|
|
inherited |
◆ addKey()
void InDetDD::TRT_DetectorManager::addKey |
( |
const std::string & |
key, |
|
|
int |
level, |
|
|
FrameType |
frame |
|
) |
| |
◆ addSpecialFolder()
void InDetDD::InDetDetectorManager::addSpecialFolder |
( |
const std::string & |
key | ) |
|
|
inherited |
◆ addTreeTop()
void InDetDD::TRT_DetectorManager::addTreeTop |
( |
const PVLink & |
vol | ) |
|
◆ align() [1/2]
StatusCode InDetDD::InDetDetectorManager::align |
( |
const RawAlignmentObjects & |
alignObjects, |
|
|
GeoVAlignmentStore * |
alignStore |
|
) |
| const |
|
inherited |
Definition at line 208 of file InDetDetectorManager.cxx.
214 bool alignmentChange =
false;
217 for(
const auto& alignObj : alignObjects) {
218 const std::string&
key = alignObj.first;
227 alignmentChange = (alignmentChange ||
status);
228 }
catch(std::runtime_error&
err) {
231 return StatusCode::FAILURE;
239 alignmentChange = (alignmentChange ||
status);
240 }
catch(std::runtime_error&
err) {
243 return StatusCode::FAILURE;
252 alignmentChange = (alignmentChange ||
status);
254 catch(std::runtime_error&
err) {
258 return StatusCode::FAILURE;
268 return StatusCode::RECOVERABLE;
276 return StatusCode::SUCCESS;
◆ align() [2/2]
◆ alignmentCallback()
◆ ATLAS_NOT_THREAD_SAFE()
void addKey InDetDD::TRT_DetectorManager::ATLAS_NOT_THREAD_SAFE |
( |
const std::string & |
key, |
|
|
int |
level |
|
) |
| |
◆ barrelTransformField()
const GeoXF::Function * InDetDD::TRT_DetectorManager::barrelTransformField |
( |
size_t |
i | ) |
const |
◆ conditions()
Conditions interface (mostly for internal use):-------------------------—.
Definition at line 509 of file TRT_DetectorManager.cxx.
◆ digitizationVersion()
unsigned int InDetDD::TRT_DetectorManager::digitizationVersion |
( |
| ) |
const |
Get and set information about digitization version ---------------------—.
Definition at line 215 of file TRT_DetectorManager.cxx.
◆ digitizationVersionName()
const std::string & InDetDD::TRT_DetectorManager::digitizationVersionName |
( |
| ) |
const |
◆ dxContainer()
◆ endcapTransformField()
const GeoXF::Function * InDetDD::TRT_DetectorManager::endcapTransformField |
( |
size_t |
i | ) |
const |
◆ gasType()
◆ getBarrelElement() [1/2]
TRT_BarrelElement * InDetDD::TRT_DetectorManager::getBarrelElement |
( |
unsigned int |
positive, |
|
|
unsigned int |
moduleIndex, |
|
|
unsigned int |
phiIndex, |
|
|
unsigned int |
strawLayerIndex |
|
) |
| |
◆ getBarrelElement() [2/2]
const TRT_BarrelElement * InDetDD::TRT_DetectorManager::getBarrelElement |
( |
unsigned int |
positive, |
|
|
unsigned int |
moduleIndex, |
|
|
unsigned int |
phiIndex, |
|
|
unsigned int |
strawLayerIndex |
|
) |
| const |
◆ getDetectorElementBegin()
TRT_DetElementCollection::const_iterator InDetDD::TRT_DetectorManager::getDetectorElementBegin |
( |
| ) |
const |
◆ getDetectorElementCollection()
Access to Whole Collection of Elements ---------------------------------—.
Definition at line 170 of file TRT_DetectorManager.cxx.
◆ getDetectorElementContainer()
Access the element container -------------------------------------------—.
Definition at line 165 of file TRT_DetectorManager.cxx.
◆ getDetectorElementEnd()
TRT_DetElementCollection::const_iterator InDetDD::TRT_DetectorManager::getDetectorElementEnd |
( |
| ) |
const |
◆ getElement() [1/2]
Access Elements Generically---------------------------------------------—.
Definition at line 148 of file TRT_DetectorManager.cxx.
154 if (hashId>=elements->size())
return nullptr;
155 return (*elements)[hashId];
◆ getElement() [2/2]
◆ getEndcapElement() [1/2]
TRT_EndcapElement * InDetDD::TRT_DetectorManager::getEndcapElement |
( |
unsigned int |
positive, |
|
|
unsigned int |
wheelIndex, |
|
|
unsigned int |
strawLayerIndex, |
|
|
unsigned int |
phiIndex |
|
) |
| |
◆ getEndcapElement() [2/2]
const TRT_EndcapElement * InDetDD::TRT_DetectorManager::getEndcapElement |
( |
unsigned int |
positive, |
|
|
unsigned int |
wheelIndex, |
|
|
unsigned int |
strawLayerIndex, |
|
|
unsigned int |
phiIndex |
|
) |
| const |
◆ getIdHelper()
const TRT_ID * InDetDD::TRT_DetectorManager::getIdHelper |
( |
| ) |
const |
|
overrideprivatevirtual |
◆ getLayout()
const std::string & InDetDD::InDetDetectorManager::getLayout |
( |
| ) |
const |
|
inherited |
◆ getLevel()
Retrieve level information.
Definition at line 87 of file InDetDetectorManager.cxx.
89 std::map<std::string, LevelInfo>::const_iterator iter;
◆ getNumerology() [1/2]
Access Numerological information:---------------------------------------—.
Definition at line 46 of file TRT_DetectorManager.cxx.
◆ getNumerology() [2/2]
◆ getNumTreeTops()
unsigned int InDetDD::TRT_DetectorManager::getNumTreeTops |
( |
| ) |
const |
|
overridevirtual |
Access Raw Geometry:----------------------------------------------------—.
Definition at line 77 of file TRT_DetectorManager.cxx.
◆ getTreeTop()
PVConstLink InDetDD::TRT_DetectorManager::getTreeTop |
( |
unsigned int |
i | ) |
const |
|
overridevirtual |
◆ getVersion()
const Version & InDetDD::InDetDetectorManager::getVersion |
( |
| ) |
const |
|
inherited |
◆ identifierBelongs()
bool InDetDD::TRT_DetectorManager::identifierBelongs |
( |
const Identifier & |
id | ) |
const |
|
overridevirtual |
◆ initMessaging()
void AthMessaging::initMessaging |
( |
| ) |
const |
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
◆ invalidateAll()
void InDetDD::TRT_DetectorManager::invalidateAll |
( |
| ) |
const |
|
overridevirtual |
◆ manageBarrelElement()
◆ manageEndcapElement()
◆ msg() [1/2]
MsgStream & AthMessaging::msg |
( |
| ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 164 of file AthMessaging.h.
◆ msg() [2/2]
MsgStream & AthMessaging::msg |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 179 of file AthMessaging.h.
180 {
return msg() << lvl; }
◆ msgLvl()
bool AthMessaging::msgLvl |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
Test the output level.
- Parameters
-
lvl | The message level to test against |
- Returns
- boolean Indicating if messages at given level will be printed
- Return values
-
true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
◆ operator=()
◆ processAlignmentContainer() [1/2]
Definition at line 307 of file InDetDetectorManager.cxx.
309 bool alignmentChange =
false;
312 if (container->
empty()) {
314 <<
" is empty. Probably due to out of range IOV");
316 throw std::runtime_error(
"Unable to apply Inner Detector alignments.");
321 std::map<const std::string, const AlignableTransform*> stringToTransform;
322 for (
const auto *
pat : *container) {
323 stringToTransform[
pat->tag()] =
pat;
325 for (
const std::pair<const std::string, const AlignableTransform*>&
value: stringToTransform) {
327 alignmentChange = (alignmentChange ||
status);
329 return alignmentChange;
◆ processAlignmentContainer() [2/2]
bool InDetDD::InDetDetectorManager::processAlignmentContainer |
( |
const std::string & |
key | ) |
const |
|
privateinherited |
return align folder string to use
Process the alignment container, calls processKey
Definition at line 279 of file InDetDetectorManager.cxx.
281 bool alignmentChange =
false;
286 ATH_MSG_ERROR(
"Cannot find AlignableTransformContainer for key "
287 <<
key <<
" - no misalignment");
289 throw std::runtime_error(
"Unable to apply Inner Detector alignments");
292 if (container->
empty()) {
294 <<
key <<
" is empty. Probably due to out of range IOV");
296 throw std::runtime_error(
"Unable to apply Inner Detector alignments.");
299 for (
const auto *
pat : *container) {
302 alignmentChange = (alignmentChange ||
status);
304 return alignmentChange;
◆ processGlobalAlignment()
Process new global DB folders for L1 and L2.
Reimplemented from InDetDD::InDetDetectorManager.
Definition at line 515 of file TRT_DetectorManager.cxx.
519 bool alignmentChange =
false;
521 ATH_MSG_INFO(
"Processing new global alignment containers with key " <<
key <<
" in the " << frame <<
" frame at level " <<
level);
530 <<
key <<
" - no new global alignment");
531 return alignmentChange;
536 return alignmentChange;
541 for (
const auto & citr : *atrlistcol) {
545 atrlist[
"layer"].data<int>(),
546 atrlist[
"sector"].data<int>());
549 CLHEP::Hep3Vector newtranslation(atrlist[
"Tx"].data<float>(),atrlist[
"Ty"].data<float>(),atrlist[
"Tz"].data<float>());
550 CLHEP::HepRotation newrotation;
551 newrotation.set(atrlist[
"phi"].data<float>(),atrlist[
"theta"].data<float>(),atrlist[
"psi"].data<float>());
554 msg(
MSG::DEBUG) <<
"New global DB -- channel: " << citr.first
555 <<
" ,bec: " << atrlist[
"bec"].data<
int>()
556 <<
" ,layer: " << atrlist[
"layer"].data<int>()
557 <<
" ,sector: " << atrlist[
"sector"].data<
int>()
558 <<
" ,Tx: " << atrlist[
"Tx"].data<float>()
559 <<
" ,Ty: " << atrlist[
"Ty"].data<
float>()
560 <<
" ,Tz: " << atrlist[
"Tz"].data<float>()
561 <<
" ,phi: " << atrlist[
"phi"].data<
float>()
562 <<
" ,theta: " << atrlist[
"theta"].data<float>()
563 <<
" ,psi: " << atrlist[
"psi"].data<
float>() <<
endmsg;
574 msg(
MSG::DEBUG) <<
"Cannot set AlignableTransform for identifier."
576 <<
" at level " <<
level <<
" for new global DB " <<
endmsg;
580 alignmentChange = (alignmentChange ||
status);
583 return alignmentChange;
◆ processGlobalAlignmentContainer()
bool InDetDD::InDetDetectorManager::processGlobalAlignmentContainer |
( |
const std::string & |
key, |
|
|
const CondAttrListCollection * |
obj = nullptr , |
|
|
GeoVAlignmentStore * |
alignStore = nullptr |
|
) |
| const |
|
privateinherited |
Definition at line 395 of file InDetDetectorManager.cxx.
399 bool alignmentChange =
false;
405 if (levelInfo.isValid()) {
412 if (!levelInfo.isValid() )
return false;
417 alignmentChange = (alignmentChange ||
status);
419 return alignmentChange;
◆ processKey()
bool InDetDD::InDetDetectorManager::processKey |
( |
const std::string & |
key, |
|
|
const AlignableTransform * |
transformCollection, |
|
|
GeoVAlignmentStore * |
alignStore = nullptr |
|
) |
| const |
|
privateinherited |
Called by processAlignmentContainer, applies only one key on the transform Collections.
Definition at line 332 of file InDetDetectorManager.cxx.
336 bool alignmentChange =
false;
341 if (levelInfo.isValid()) {
348 if (!levelInfo.isValid() )
return false;
352 trans_iter != transformCollection->
end();
355 <<
getIdHelper()->show_to_string(trans_iter->identify())
356 <<
" at level " << levelInfo.level());
362 trans_iter->identify(),
367 alignmentChange = (alignmentChange ||
status);
372 ATH_MSG_DEBUG(
"Cannot set AlignableTransform for identifier."
373 <<
" Probably OK if its /Indet/Align/ID folder. "
374 <<
getIdHelper()->show_to_string(trans_iter->identify())
375 <<
" at level " << levelInfo.level());
378 ATH_MSG_DEBUG(
"WARNING: Cannot set AlignableTransform for identifier "
379 <<
getIdHelper()->show_to_string(trans_iter->identify())
380 <<
" at level " << levelInfo.level());
383 <<
getIdHelper()->show_to_string(trans_iter->identify())
384 <<
" at level " << levelInfo.level());
385 ATH_MSG_WARNING(
"Subsequent WARNINGS will be printed at DEBUG level.");
391 return alignmentChange;
◆ processSpecialAlignment() [1/2]
bool InDetDD::TRT_DetectorManager::processSpecialAlignment |
( |
const std::string & |
key, |
|
|
const CondAttrListCollection * |
obj = nullptr , |
|
|
GeoVAlignmentStore * |
alignStore = nullptr |
|
) |
| const |
|
overridevirtual |
◆ processSpecialAlignment() [2/2]
Implements InDetDD::InDetDetectorManager.
Definition at line 467 of file TRT_DetectorManager.cxx.
478 if (
sc.isFailure()) {
480 msg(MSG::INFO) <<
"Cannot find StrawDxContainer for key "
481 <<
key <<
" - no fine alignment " <<
endmsg;
482 throw std::runtime_error(
"Unable to apply TRT fine alignment. This is normal for simulation");
493 TRT_BaseElement * element = *element_iter;
495 element->invalidate();
◆ setAlignableTransformAnyFrameDelta()
Set alignable transforms: Amg based.
Definition at line 337 of file TRT_DetectorManager.cxx.
382 if (!extXF)
return false;
383 if (!extXF->alignableTransform())
return false;
385 const GeoVFullPhysVol * child = extXF->child();
386 const GeoVFullPhysVol * frameVol = extXF->frame();
391 if (child && !frameVol) {
394 }
else if (!child || child == frameVol){
402 msg(MSG::ERROR) <<
"global frame specified, but child == 0" <<
endmsg;
405 extXF->alignableTransform()->setDelta(childXF.inverse() * delta * childXF);
410 extXF->alignableTransform()->setDelta(delta);
421 extXF->alignableTransform()->setDelta(xfChild.inverse() * xfFrame * delta * xfFrame.inverse() * xfChild);
◆ setAlignableTransformDelta()
◆ setBarrelDescriptor()
Set TRT_Barrel/EndcapDescriptor pointer to the internal sets to delete them in the destructor.
Definition at line 586 of file TRT_DetectorManager.cxx.
◆ setBarrelTransformField()
void InDetDD::TRT_DetectorManager::setBarrelTransformField |
( |
size_t |
i, |
|
|
const GeoXF::Function * |
field |
|
) |
| |
◆ setDigitizationVersion()
void InDetDD::TRT_DetectorManager::setDigitizationVersion |
( |
const unsigned int & |
dv, |
|
|
const std::string & |
name |
|
) |
| |
◆ setDxContainer()
◆ setEndcapDescriptor()
◆ setEndcapTransformField()
void InDetDD::TRT_DetectorManager::setEndcapTransformField |
( |
size_t |
i, |
|
|
const GeoXF::Function * |
field |
|
) |
| |
◆ setGasType()
◆ setIdHelper()
void InDetDD::TRT_DetectorManager::setIdHelper |
( |
const TRT_ID * |
idHelper, |
|
|
bool |
owns = true |
|
) |
| |
Get the ID helper: -----------------------------------------------------—.
Definition at line 140 of file TRT_DetectorManager.cxx.
◆ setLevel()
void AthMessaging::setLevel |
( |
MSG::Level |
lvl | ) |
|
|
inherited |
◆ setVersion()
void InDetDD::InDetDetectorManager::setVersion |
( |
const Version & |
version | ) |
|
|
inherited |
◆ updateAll()
void InDetDD::TRT_DetectorManager::updateAll |
( |
| ) |
const |
|
overridevirtual |
◆ ATLAS_THREAD_SAFE
std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
|
mutableprivateinherited |
◆ m_alignableTransforms
◆ m_alignfoldertype
◆ m_barrelDescriptors
◆ m_barrelXF
const GeoXF::Function* InDetDD::TRT_DetectorManager::m_barrelXF[3] {} |
|
private |
◆ m_detStore
◆ m_digvers
unsigned int InDetDD::TRT_DetectorManager::m_digvers |
|
private |
◆ m_digversname
std::string InDetDD::TRT_DetectorManager::m_digversname |
|
private |
◆ m_dxContainer
◆ m_elementContainer
◆ m_endcapDescriptors
◆ m_endcapXF
const GeoXF::Function* InDetDD::TRT_DetectorManager::m_endcapXF[3] {} |
|
private |
◆ m_folders
std::set<std::string> InDetDD::InDetDetectorManager::m_folders |
|
privateinherited |
◆ m_gasType
◆ m_globalFolders
std::set<std::string> InDetDD::InDetDetectorManager::m_globalFolders |
|
privateinherited |
◆ m_idHelper
◆ m_imsg
std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr } |
|
mutableprivateinherited |
◆ m_keys
std::map<std::string, LevelInfo> InDetDD::InDetDetectorManager::m_keys |
|
privateinherited |
◆ m_lvl
std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL } |
|
mutableprivateinherited |
◆ m_msg_tls
boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
◆ m_nm
std::string AthMessaging::m_nm |
|
privateinherited |
◆ m_numerology
◆ m_ownsIdHelper
bool InDetDD::TRT_DetectorManager::m_ownsIdHelper |
|
private |
◆ m_specialFolders
std::set<std::string> InDetDD::InDetDetectorManager::m_specialFolders |
|
privateinherited |
◆ m_suppressWarnings
std::atomic_bool InDetDD::InDetDetectorManager::m_suppressWarnings |
|
mutableprotectedinherited |
◆ m_version
Version InDetDD::InDetDetectorManager::m_version |
|
privateinherited |
◆ m_volume
std::vector<PVLink> InDetDD::TRT_DetectorManager::m_volume |
|
private |
◆ s_invalidLevel
The documentation for this class was generated from the following files:
std::atomic< MSG::Level > m_lvl
Current logging level.
std::atomic< const TRTCond::StrawDxContainer * > m_dxContainer
Identifier layer_id(int barrel_ec, int phi_module, int layer_or_wheel, int straw_layer) const
For an individual straw layer.
bool contains(const TKEY &key) const
Look up a keyed object in TDS (compare also tryRetrieve) returns false if object not available in TDS...
void addAlignableTransform(int level, const Identifier &id, GeoAlignableTransform *transform, const GeoVFullPhysVol *child=0, const GeoVFullPhysVol *frameVol=0)
Add alignable transforms: GeoModel/CLHEP based.
void manageEndcapElement(TRT_EndcapElement *endcap, const TRT_ID *idHelper)
virtual bool identifierBelongs(const Identifier &id) const =0
Check identifier is for this detector.
const TRT_ID * m_idHelper
A CondMultChanCollection is a template class which can hold a collection of T* objects which are inte...
virtual const AtlasDetectorID * getIdHelper() const =0
const GeoXF::Function * m_barrelXF[3]
std::string m_digversname
std::atomic_bool m_suppressWarnings
virtual bool setAlignableTransformDelta(int level, const Identifier &id, const Amg::Transform3D &delta, FrameType frame, GeoVAlignmentStore *alignStore) const override
Set alignable transforms: Amg based.
std::set< const TRT_EndcapDescriptor * > m_endcapDescriptors
bool is_trt(Identifier id) const
const std::string & layout() const
Layout (eg Initial, Final, TestBeam)
#define ATH_MSG_VERBOSE(x)
This class is a collection of AttributeLists where each one is associated with a channel number....
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
std::map< std::string, LevelInfo > m_keys
virtual const TRT_ID * getIdHelper() const override
IMessageSvc * getMessageSvc(bool quiet=false)
const LevelInfo & getLevel(const std::string &key) const
Retrieve level information.
void manageBarrelElement(TRT_BarrelElement *barrel, const TRT_ID *idHelper)
StatusCode retrieve(const T *&ptr) const
Retrieve the default object into a const T*.
void setNumerology(const TRT_Numerology *mynum)
const GeoXF::Function * m_endcapXF[3]
bool msgLvl(const MSG::Level lvl) const
Test the output level.
::StatusCode StatusCode
StatusCode definition for legacy code.
Eigen::Affine3d Transform3D
std::set< std::string > m_globalFolders
std::vector< AlignableTransformMap > m_alignableTransforms
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
const int FIRST_HIGHER_LEVEL
std::vector< PVLink > m_volume
static const LevelInfo s_invalidLevel
TRT_Numerology * m_numerology
bool setAlignableTransformAnyFrameDelta(ExtendedAlignableTransform *extXF, const Amg::Transform3D &delta, FrameType frame, GeoVAlignmentStore *alignStore) const
Set alignable transforms: Amg based.
StoreGateSvc * m_detStore
virtual bool setAlignableTransformDelta(int level, const Identifier &id, const Amg::Transform3D &delta, FrameType frame, GeoVAlignmentStore *alignStore=nullptr) const =0
Set method applying the delta transform (in global or local frame) onto the geoModel transform : CLHE...
MsgStream & msg() const
The standard message stream.
TRT_DetElementContainer m_elementContainer
TRT_DetElementCollection::const_iterator getDetectorElementBegin() const
TRT_DetElementCollection::const_iterator getDetectorElementEnd() const
std::set< std::string > m_folders
const TRT_BarrelElement * getBarrelDetElement(unsigned int positive, unsigned int moduleIndex, unsigned int phiIndex, unsigned int strawLayerIndex) const
StatusCode align(IOVSVC_CALLBACK_ARGS) const
std::set< const TRT_BarrelDescriptor * > m_barrelDescriptors
virtual bool processGlobalAlignment(const std::string &key, int level, FrameType frame, const CondAttrListCollection *obj=nullptr, GeoVAlignmentStore *alignStore=nullptr) const
bool processKey(const std::string &key, const AlignableTransform *transformCollection, GeoVAlignmentStore *alignStore=nullptr) const
Called by processAlignmentContainer, applies only one key on the transform Collections.
unsigned int phiIndex(float phi, float binsize)
calculate phi index for a given phi
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
#define ATH_MSG_WARNING(x)
Amg::Transform3D CLHEPTransformToEigen(const HepGeom::Transform3D &CLHEPtransf)
Converts a CLHEP-based HepGeom::Transform3D into an Eigen Amg::Transform3D.
std::set< std::string > m_specialFolders
std::string m_nm
Message source name.
bool processAlignmentContainer(const std::string &key) const
return align folder string to use
const TRT_DetElementCollection * getElements() const
bool processGlobalAlignmentContainer(const std::string &key, const CondAttrListCollection *obj=nullptr, GeoVAlignmentStore *alignStore=nullptr) const
AlignFolderType m_alignfoldertype
void setDxContainer(const TRTCond::StrawDxContainer *container) const
InDetDetectorManager(StoreGateSvc *detStore, const std::string &name)
void initMessaging() const
Initialize our message level and MessageSvc.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
void addChannel(const std::string &key, int level, FrameType frame)
Alignment access.
const TRT_EndcapElement * getEndcapDetElement(unsigned int positive, unsigned int wheelIndex, unsigned int strawLayerIndex, unsigned int phiIndex) const
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
virtual bool processSpecialAlignment(const std::string &key, InDetDD::AlignFolderType alignfolder) const =0
bool empty() const noexcept
Returns true if the collection is empty.
IdentifierHash straw_layer_hash(Identifier straw_layer_id) const
straw_layer hash from id - optimized
Identifier module_id(int barrel_ec, int phi_module, int layer_or_wheel) const
For an individual module phi sector.