ATLAS Offline Software
Loading...
Searching...
No Matches
ForDetEnvelopeTool Class Referencefinal

#include <ForDetEnvelopeTool.h>

Inheritance diagram for ForDetEnvelopeTool:
Collaboration diagram for ForDetEnvelopeTool:

Public Member Functions

 ForDetEnvelopeTool (const std::string &type, const std::string &name, const IInterface *parent)
virtual ~ForDetEnvelopeTool () override final=default
virtual StatusCode create () override final
virtual StatusCode clear () override final
virtual GeoVDetectorManager * manager ()
virtual const GeoVDetectorManager * manager () const
virtual StatusCode registerCallback ATLAS_NOT_THREAD_SAFE () override
virtual StatusCode align ATLAS_NOT_THREAD_SAFE (IOVSVC_CALLBACK_ARGS) override

Protected Attributes

GeoVDetectorManager * m_detector {nullptr}

Private Attributes

const ForDetEnvelopeManagerm_manager

Detailed Description

Definition at line 11 of file ForDetEnvelopeTool.h.

Constructor & Destructor Documentation

◆ ForDetEnvelopeTool()

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

Definition at line 15 of file ForDetEnvelopeTool.cxx.

17 :
18 GeoModelTool(type,name,parent),
19 m_manager(nullptr)
20{
21}
const ForDetEnvelopeManager * m_manager

◆ ~ForDetEnvelopeTool()

virtual ForDetEnvelopeTool::~ForDetEnvelopeTool ( )
finaloverridevirtualdefault

Member Function Documentation

◆ ATLAS_NOT_THREAD_SAFE() [1/2]

virtual StatusCode registerCallback GeoModelTool::ATLAS_NOT_THREAD_SAFE ( )
inlineoverridevirtualinherited

Reimplemented in BCMPrimeDetectorTool, HGTD_DetectorTool, HGTD_GMX_DetectorTool, PLRDetectorTool, and TRT_DetectorTool.

Definition at line 26 of file GeoModelTool.h.

26{return StatusCode::FAILURE;}

◆ ATLAS_NOT_THREAD_SAFE() [2/2]

virtual StatusCode align GeoModelTool::ATLAS_NOT_THREAD_SAFE ( IOVSVC_CALLBACK_ARGS )
inlineoverridevirtualinherited

Reimplemented in HGTD_DetectorTool, LArDetectorToolNV, PixelDetectorTool, SCT_DetectorTool, and TRT_DetectorTool.

Definition at line 27 of file GeoModelTool.h.

27{return StatusCode::SUCCESS;}

◆ clear()

StatusCode ForDetEnvelopeTool::clear ( )
finaloverridevirtual

Reimplemented from GeoModelTool.

Definition at line 53 of file ForDetEnvelopeTool.cxx.

54{
55 SG::DataProxy* proxy = detStore()->proxy(ClassID_traits<ForDetEnvelopeManager>::ID(),m_manager->getName());
56 if(proxy) {
57 proxy->reset();
58 m_manager = nullptr;
59 }
60 return StatusCode::SUCCESS;
61}

◆ create()

StatusCode ForDetEnvelopeTool::create ( )
finaloverridevirtual

Definition at line 23 of file ForDetEnvelopeTool.cxx.

24{
25 ATH_MSG_INFO("Building Forward Detectors Envelope");
26
27 GeoModelExperiment* theExpt;
28 if (StatusCode::SUCCESS != detStore()->retrieve(theExpt,"ATLAS")) {
29 ATH_MSG_ERROR("Could not find GeoModelExperiment ATLAS");
30 return StatusCode::FAILURE;
31 }
32
33 if(nullptr==m_manager) {
34 GeoPhysVol *world=&*theExpt->getPhysVol();
35
36 ForDetEnvelopeFactory theFactory(detStore().operator->());
37 theFactory.create(world);
38
39 m_manager = theFactory.getDetectorManager();
40 theExpt->addManager(m_manager);
41 StatusCode sc = detStore()->record(m_manager,
42 m_manager->getName());
43
44 if (sc.isFailure()) {
45 ATH_MSG_ERROR("Could not register ForDetEnvelope detector manager");
46 return StatusCode::FAILURE;
47 }
48 return StatusCode::SUCCESS;
49 }
50 return StatusCode::FAILURE;
51}
#define ATH_MSG_ERROR(x)
#define ATH_MSG_INFO(x)
static Double_t sc
GeoPhysVol * getPhysVol()
Destructor.
void addManager(const GeoVDetectorManager *)
::StatusCode StatusCode
StatusCode definition for legacy code.
retrieve(aClass, aKey=None)
Definition PyKernel.py:110

◆ manager() [1/2]

virtual GeoVDetectorManager * GeoModelTool::manager ( )
inlinevirtualinherited

Definition at line 22 of file GeoModelTool.h.

22{return m_detector;}
GeoVDetectorManager * m_detector

◆ manager() [2/2]

virtual const GeoVDetectorManager * GeoModelTool::manager ( ) const
inlinevirtualinherited

Definition at line 23 of file GeoModelTool.h.

23{return m_detector;}

Member Data Documentation

◆ m_detector

GeoVDetectorManager* GeoModelTool::m_detector {nullptr}
protectedinherited

Definition at line 30 of file GeoModelTool.h.

30{nullptr};

◆ m_manager

const ForDetEnvelopeManager* ForDetEnvelopeTool::m_manager
private

Definition at line 24 of file ForDetEnvelopeTool.h.


The documentation for this class was generated from the following files: