ATLAS Offline Software
Tracking
Acts
ActsGeometry
ActsGeometry
DetectorVolumeSvc.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef ACTSGEOMETRY_ACTSDETECTORVOLUMESVC_H
6
#define ACTSGEOMETRY_ACTSDETECTORVOLUMESVC_H
7
8
// ATHENA
9
#include "
AthenaBaseComps/AthService.h
"
10
#include "GaudiKernel/ToolHandle.h"
11
12
// PACKAGE
13
#include "
ActsGeometryInterfaces/IDetectorVolumeSvc.h
"
14
#include "
ActsGeometryInterfaces/IDetectorVolumeBuilderTool.h
"
15
#include "
CxxUtils/CachedValue.h
"
16
17
18
// ACTS
19
#include "Acts/Detector/Detector.hpp"
20
21
22
namespace
ActsTrk
{
23
24
class
DetectorVolumeSvc
:
public
extends<AthService, IDetectorVolumeSvc> {
25
public
:
26
27
DetectorVolumeSvc
(
const
std::string&
name
, ISvcLocator* pSvcLocator );
28
29
StatusCode
initialize
()
override
;
30
31
DetectorPtr
detector
()
const override
;
32
33
unsigned
int
populateAlignmentStore
(AlignmentStore&
store
)
const override
;
34
35
const
ActsGeometryContext
&
getNominalContext
()
const override
;
36
37
private
:
38
std::shared_ptr<const Acts::Experimental::Detector>
buildDetector
()
const
;
39
40
ToolHandleArray<IDetectorVolumeBuilderTool>
m_builderTools
{
this
,
"DetectorBuilders"
, {}};
41
42
CxxUtils::CachedValue<DetectorPtr>
m_detector
{};
43
ActsGeometryContext
m_nomContext
{};
44
};
45
}
46
47
48
49
#endif
SGTest::store
TestStore store
Definition:
TestStore.cxx:23
ActsTrk::DetectorVolumeSvc::detector
DetectorPtr detector() const override
Definition:
DetectorVolumeSvc.cxx:33
ActsTrk::DetectorVolumeSvc::populateAlignmentStore
unsigned int populateAlignmentStore(AlignmentStore &store) const override
Definition:
DetectorVolumeSvc.cxx:41
ActsTrk::DetectorVolumeSvc
Definition:
DetectorVolumeSvc.h:24
ActsTrk::DetectorVolumeSvc::m_nomContext
ActsGeometryContext m_nomContext
Definition:
DetectorVolumeSvc.h:43
ActsTrk::DetectorVolumeSvc::m_builderTools
ToolHandleArray< IDetectorVolumeBuilderTool > m_builderTools
Definition:
DetectorVolumeSvc.h:40
ActsTrk::DetectorVolumeSvc::buildDetector
std::shared_ptr< const Acts::Experimental::Detector > buildDetector() const
Definition:
DetectorVolumeSvc.cxx:49
ActsTrk::DetectorVolumeSvc::initialize
StatusCode initialize() override
Definition:
DetectorVolumeSvc.cxx:24
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ActsTrk::DetectorVolumeSvc::m_detector
CxxUtils::CachedValue< DetectorPtr > m_detector
Definition:
DetectorVolumeSvc.h:42
CxxUtils::CachedValue< DetectorPtr >
IDetectorVolumeBuilderTool.h
ActsTrk::DetectorVolumeSvc::DetectorVolumeSvc
DetectorVolumeSvc(const std::string &name, ISvcLocator *pSvcLocator)
Definition:
DetectorVolumeSvc.cxx:20
ActsGeometryContext
Include the GeoPrimitives which need to be put first.
Definition:
ActsGeometryContext.h:27
IDetectorVolumeSvc.h
CachedValue.h
Cached value with atomic update.
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
ActsTrk::DetectorVolumeSvc::getNominalContext
const ActsGeometryContext & getNominalContext() const override
Definition:
DetectorVolumeSvc.cxx:45
AthService.h
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition:
MuonDetectorBuilderTool.cxx:54
Generated on Sun Dec 22 2024 21:09:24 for ATLAS Offline Software by
1.8.18