LArDetectorToolNV is a standard GeoModel tool, which calls LArDetectorFactory::create(), stores LArDetectorManager to the Detector Store and also registers a callback function align() which applies misalignments on top of the 'regular' geometry.
More...
#include <LArDetectorToolNV.h>
LArDetectorToolNV is a standard GeoModel tool, which calls LArDetectorFactory::create(), stores LArDetectorManager to the Detector Store and also registers a callback function align() which applies misalignments on top of the 'regular' geometry.
Definition at line 32 of file LArDetectorToolNV.h.
◆ LArDetectorToolNV()
LArDetectorToolNV::LArDetectorToolNV |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~LArDetectorToolNV()
LArDetectorToolNV::~LArDetectorToolNV |
( |
| ) |
|
|
virtualdefault |
◆ align()
Reimplemented from GeoModelTool.
Definition at line 260 of file LArDetectorTool.cxx.
264 return StatusCode::SUCCESS;
268 ATH_MSG_ERROR(
" LArDetDescrManager not created yet, cannot align !");
269 return StatusCode::FAILURE;
283 return StatusCode::FAILURE;
289 return StatusCode::FAILURE;
294 ATH_MSG_DEBUG(
" No LAr DetCondKeyTrans in SG, skipping align() ");
297 return StatusCode::SUCCESS;
◆ ATLAS_NOT_THREAD_SAFE()
virtual StatusCode registerCallback LArDetectorToolNV::ATLAS_NOT_THREAD_SAFE |
( |
| ) |
|
|
overridevirtual |
◆ clear()
StatusCode LArDetectorToolNV::clear |
( |
| ) |
|
|
overridevirtual |
Reimplemented from GeoModelTool.
Definition at line 194 of file LArDetectorTool.cxx.
198 std::vector<std::string> sgkeysFPV;
201 for (
const std::string& stored : sgkeysFPV) {
209 storedPV->getPhysVol()->getAbsoluteTransform();
210 storedPV->getPhysVol()->getDefAbsoluteTransform();
214 for (
const std::string& stored : sgkeysFPV) {
222 storedPV->getPhysVol()->clear();
227 std::vector<std::string> sgkeysAXF;
229 for (
const std::string& stored : sgkeysAXF) {
241 return StatusCode::SUCCESS;
◆ create()
StatusCode LArDetectorToolNV::create |
( |
| ) |
|
|
overridevirtual |
Definition at line 76 of file LArDetectorTool.cxx.
79 ATH_MSG_FATAL(
"LAr GeoModel description has already been built. LArDetectorToolNV::create() cannot be called more than once!");
80 return StatusCode::FAILURE;
94 GeoModelIO::ReadGeoModel* sqliteReader = geoDbTag->getSqliteReader();
95 std::string detectorKey{
""};
96 std::string detectorNode{
""};
101 std::string LArVersion = geoDbTag->LAr_VersionOverride();
103 detectorKey = LArVersion.empty() ?
AtlasVersion : LArVersion;
104 detectorNode = LArVersion.empty() ?
"ATLAS" :
"LAr";
105 ATH_MSG_INFO(
"Keys for LAr are " << detectorKey <<
" " << detectorNode);
106 ATH_MSG_INFO(
"Building LAr version " << geoDbTag->LAr_Version()
110 IRDBRecordset_ptr switchSet = accessSvc->getRecordsetPtr(
"LArSwitches", detectorKey, detectorNode);
111 if ((*switchSet).size()==0) {
112 ATH_MSG_ERROR(
"Unable to retrieve LArSwitches from Geometry DB");
113 return StatusCode::FAILURE;
139 GeoIntrusivePtr<GeoPhysVol>world=theExpt->
getPhysVol();
143 , accessSvc.operator->()
147 theLArFactoryLite.create(world);
148 m_manager = theLArFactoryLite.getDetectorManager();
150 std::unique_ptr<LArGeo::VDetectorParameters>
params = std::make_unique<LArGeo::RAL>();
158 std::string LArTag = accessSvc->getChildTag(
"LAr",detectorKey,detectorNode);
159 if(LArTag.find(
"H8")!=std::string::npos) {
162 else if(LArTag.find(
"H6")!=std::string::npos) {
180 theLArFactory.create(world);
181 m_manager = theLArFactory.getDetectorManager();
191 return StatusCode::SUCCESS;
◆ manager() [1/2]
GeoVDetectorManager * GeoModelTool::manager |
( |
| ) |
|
|
virtualinherited |
The Detector Node corresponding to this tool.
Definition at line 21 of file GeoModelTool.cxx.
◆ manager() [2/2]
const GeoVDetectorManager * GeoModelTool::manager |
( |
| ) |
const |
|
virtualinherited |
◆ m_activateFT
bool LArDetectorToolNV::m_activateFT |
|
private |
◆ m_alignHelper
◆ m_applyAlignments
bool LArDetectorToolNV::m_applyAlignments |
|
private |
◆ m_barrelSaggingOn
bool LArDetectorToolNV::m_barrelSaggingOn |
|
private |
◆ m_barrelVisLimit
int LArDetectorToolNV::m_barrelVisLimit |
|
private |
◆ m_buildBarrel
bool LArDetectorToolNV::m_buildBarrel |
|
private |
◆ m_buildEndcap
bool LArDetectorToolNV::m_buildEndcap |
|
private |
◆ m_detector
GeoVDetectorManager* GeoModelTool::m_detector |
|
protectedinherited |
◆ m_EMECVariantInner
std::string LArDetectorToolNV::m_EMECVariantInner |
|
private |
◆ m_EMECVariantOuter
std::string LArDetectorToolNV::m_EMECVariantOuter |
|
private |
◆ m_enableMBTS
bool LArDetectorToolNV::m_enableMBTS |
|
private |
◆ m_fcalVisLimit
int LArDetectorToolNV::m_fcalVisLimit |
|
private |
◆ m_geometryConfig
std::string LArDetectorToolNV::m_geometryConfig |
|
private |
◆ m_manager
The documentation for this class was generated from the following files: