ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkDetDescr
TrkDetDescrSvc
TrkDetDescrSvc
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// TrackingGeometrySvc.h, (c) ATLAS Detector software
8
9
#ifndef TRKDETDESCRINTERFACES_TRACKINGGEOMETRYSERVICE_H
10
#define TRKDETDESCRINTERFACES_TRACKINGGEOMETRYSERVICE_H
11
12
#include "
TrkDetDescrInterfaces/ITrackingGeometrySvc.h
"
13
#include "
TrkDetDescrUtils/LayerIndex.h
"
14
#include "
TrkGeometry/LayerMaterialMap.h
"
15
#include "
TrkDetDescrInterfaces/IGeometryBuilder.h
"
16
#include "
TrkDetDescrInterfaces/IGeometryProcessor.h
"
17
#include "Gaudi/Property.h"
18
#include "GaudiKernel/ToolHandle.h"
19
#include "
AthenaBaseComps/AthService.h
"
20
#include "
EventInfoMgt/ITagInfoMgr.h
"
21
22
#ifdef TRKDETDESCR_MEMUSAGE
23
#include "
TrkDetDescrUtils/MemoryLogger.h
"
24
#endif
25
26
27
class
StoreGateSvc
;
28
class
ISvcLocator;
29
template
<
class
TYPE>
class
SvcFactory
;
30
31
namespace
Trk
{
32
class
TrackingGeometry
;
33
class
Layer
;
34
class
LayerMaterialProperties
;
35
36
43
44
class
ATLAS_NOT_THREAD_SAFE
TrackingGeometrySvc
:
45
public
extends <AthService, ITrackingGeometrySvc>,
virtual
public
ITagInfoMgr::Listener
46
{
47
public
:
48
49
virtual
StatusCode
initialize
()
override
;
50
virtual
StatusCode
finalize
()
override
;
51
52
// TagInfoMgr callback
53
virtual
void
tagInfoUpdated
()
override
final
;
54
56
StatusCode
trackingGeometryInit
(
bool
needsInit =
true
);
57
59
virtual
const
Trk::TrackingGeometry
*
trackingGeometry
()
const override
;
60
62
virtual
const
std::string&
trackingGeometryName
()
const override
;
63
64
friend
class
SvcFactory
<
TrackingGeometrySvc
>;
65
67
using
base_class::base_class;
68
69
70
private
:
71
void
trackingGeometryNotSet
()
const
;
72
73
ToolHandle<Trk::IGeometryBuilder>
m_trackingGeometryBuilder
{
this
,
"GeometryBuilder"
,
""
};
75
mutable
const
Trk::TrackingGeometry
*
m_trackingGeometry
{
nullptr
};
76
78
Gaudi::Property<std::string>
m_trackingGeometryName
{
this
,
"TrackingGeometryName"
,
"AtlasTrackingGeometry"
};
80
ToolHandleArray<Trk::IGeometryProcessor>
m_geometryProcessors
{
this
,
"GeometryProcessors"
, {},
"Tools to process geometry"
};
82
83
#ifdef TRKDETDESCR_MEMUSAGE
84
Trk::MemoryLogger
m_memoryLogger;
85
float
m_changeVsize {0.0};
86
float
m_changeRss {0.0};
87
#endif
88
89
Gaudi::Property<bool>
m_rerunOnCallback
{
this
,
"RerunOnCallback"
,
false
};
91
Gaudi::Property<bool>
m_buildGeometryFromTagInfo
{
this
,
"BuildGeometryFromTagInfo"
,
true
};
92
};
93
}
94
95
inline
const
Trk::TrackingGeometry
*
Trk::TrackingGeometrySvc::trackingGeometry
()
const
96
{
if
(!
m_trackingGeometry
) {
trackingGeometryNotSet
(); }
97
return
m_trackingGeometry
; }
98
99
inline
const
std::string&
Trk::TrackingGeometrySvc::trackingGeometryName
()
const
100
{
return
m_trackingGeometryName
; }
101
102
#endif
// TRKDETDESCRINTERFACES_TRACKINGGEOMETRYSERVICE_H
103
AthService.h
IGeometryBuilder.h
IGeometryProcessor.h
ITagInfoMgr.h
LayerIndex.h
LayerMaterialMap.h
MemoryLogger.h
ITrackingGeometrySvc.h
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition
checker_macros.h:212
ITagInfoMgr::Listener
Listener interface class that client who want to be notified about TagInfo update should implement (a...
Definition
ITagInfoMgr.h:72
StoreGateSvc
The Athena Transient Store API.
Definition
StoreGateSvc.h:120
SvcFactory
Definition
AthCnvSvc.h:28
Trk::LayerMaterialProperties
This virtual base class encapsulates the logics to build pre/post/full update material for Layer stru...
Definition
LayerMaterialProperties.h:64
Trk::Layer
Base Class for a Detector Layer in the Tracking realm.
Definition
Layer.h:72
Trk::MemoryLogger
A small helper class looking at /proc/<PID>status.
Definition
MemoryLogger.h:31
Trk::TrackingGeometrySvc
This service builds and registers the TrackingGeometry in the detector store.
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:46
Trk::TrackingGeometrySvc::trackingGeometryNotSet
void trackingGeometryNotSet() const
Definition
TrkDetDescr/TrkDetDescrSvc/src/TrackingGeometrySvc.cxx:167
Trk::TrackingGeometrySvc::trackingGeometryInit
StatusCode trackingGeometryInit(bool needsInit=true)
Create the geometry.
Definition
TrkDetDescr/TrkDetDescrSvc/src/TrackingGeometrySvc.cxx:70
Trk::TrackingGeometrySvc::m_rerunOnCallback
Gaudi::Property< bool > m_rerunOnCallback
enables the callback
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:89
Trk::TrackingGeometrySvc::tagInfoUpdated
virtual void tagInfoUpdated() override final
Definition
TrkDetDescr/TrkDetDescrSvc/src/TrackingGeometrySvc.cxx:63
Trk::TrackingGeometrySvc::m_trackingGeometryBuilder
ToolHandle< Trk::IGeometryBuilder > m_trackingGeometryBuilder
the actual building tool
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:73
Trk::TrackingGeometrySvc::finalize
virtual StatusCode finalize() override
Finalize Service.
Definition
TrkDetDescr/TrkDetDescrSvc/src/TrackingGeometrySvc.cxx:174
Trk::TrackingGeometrySvc::m_geometryProcessors
ToolHandleArray< Trk::IGeometryProcessor > m_geometryProcessors
processors to help
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:80
Trk::TrackingGeometrySvc::trackingGeometryName
virtual const std::string & trackingGeometryName() const override
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:99
Trk::TrackingGeometrySvc::m_trackingGeometryName
Gaudi::Property< std::string > m_trackingGeometryName
the name of the TrackingGeometry
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:78
Trk::TrackingGeometrySvc::m_trackingGeometry
const Trk::TrackingGeometry * m_trackingGeometry
the cached TrackingGeometry
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:75
Trk::TrackingGeometrySvc::trackingGeometry
virtual const Trk::TrackingGeometry * trackingGeometry() const override
Provide the TrackingGeometry.
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:95
Trk::TrackingGeometrySvc::m_buildGeometryFromTagInfo
Gaudi::Property< bool > m_buildGeometryFromTagInfo
Definition
TrkDetDescr/TrkDetDescrSvc/TrkDetDescrSvc/TrackingGeometrySvc.h:91
Trk::TrackingGeometry
The TrackingGeometry class is the owner of the constructed TrackingVolumes.
Definition
TrackingGeometry.h:68
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
initialize
void initialize()
Definition
run_EoverP.cxx:894
Generated on
for ATLAS Offline Software by
1.17.0