ATLAS Offline Software
src/PixelDetectorTool.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 PIXELGEOMODEL_PIXELDETECTORTOOL_H
6 #define PIXELGEOMODEL_PIXELDETECTORTOOL_H
7 
9 #include "GaudiKernel/ToolHandle.h"
10 #include "GaudiKernel/ServiceHandle.h"
11 
16 
18 
20 
21 namespace InDetDD {
22  class PixelDetectorManager;
23 }
24 
25 class PixelDetectorTool final : public GeoModelTool {
26 
27  public:
28  // Standard Constructor
29  PixelDetectorTool( const std::string& type, const std::string& name, const IInterface* parent );
30  // Standard Destructor
31  virtual ~PixelDetectorTool() override final;
32 
33  virtual StatusCode initialize() override final;
34 
35  virtual StatusCode create() override final;
36  virtual StatusCode clear() override final;
37 
38  // Register callback function on CondDB object
39  virtual StatusCode registerCallback ATLAS_NOT_THREAD_SAFE () override final;
40 
41  // Callback function itself
42  virtual StatusCode align(IOVSVC_CALLBACK_ARGS) override;
43 
44 private:
45  //
46  bool m_services{true};
47  bool m_servicesOnLadder{true}; //JBdV
48  std::string m_detectorName{"PixelDetector"};
49  ServiceHandle<IIBLParameterSvc> m_IBLParameterSvc{this,"IBLParameterSvc","IBLParameterSvc",""};
50  bool m_dc1Geometry{false};
51  bool m_alignable{true};
52  bool m_tweakIBLDist{true}; // whether to tweak L3 transforms with IBLDist
53  bool m_initialLayout{false};
54  bool m_devVersion{false};
55  bool m_buildDBM{false};
57  ToolHandle< IGeoSubDetTool > m_bcmTool{this,"BCM_Tool","",""};
58  ToolHandle< IGeoSubDetTool > m_blmTool{this,"BLM_Tool","",""};
59  PublicToolHandle< IInDetServMatBuilderTool > m_serviceBuilderTool{this,"ServiceBuilderTool","",""};
60  ServiceHandle< IGeometryDBSvc > m_geometryDBSvc{this,"GeometryDBSvc","InDetGeometryDBSvc",""};
62  std::string m_overrideVersionName;
63 
65 
66 };
67 
68 #endif // PIXELGEOMODEL_PIXELDETECTORTOOL_H
PixelDetectorTool::m_blmTool
ToolHandle< IGeoSubDetTool > m_blmTool
Definition: src/PixelDetectorTool.h:58
PixelDetectorTool::m_overrideVersionName
std::string m_overrideVersionName
Definition: src/PixelDetectorTool.h:62
PixelDetectorTool::~PixelDetectorTool
virtual ~PixelDetectorTool() override final
Definition: src/PixelDetectorTool.cxx:50
PixelDetectorTool::initialize
virtual StatusCode initialize() override final
Definition: src/PixelDetectorTool.cxx:56
IGeometryDBSvc.h
PixelDetectorTool::m_initialLayout
bool m_initialLayout
Definition: src/PixelDetectorTool.h:53
PixelDetectorTool::m_detectorName
std::string m_detectorName
Definition: src/PixelDetectorTool.h:48
PixelDetectorTool::m_useDynamicAlignFolders
bool m_useDynamicAlignFolders
Definition: src/PixelDetectorTool.h:56
PixelDetectorTool::ATLAS_NOT_THREAD_SAFE
virtual StatusCode registerCallback ATLAS_NOT_THREAD_SAFE() override final
PixelDetectorTool::m_dc1Geometry
bool m_dc1Geometry
Definition: src/PixelDetectorTool.h:50
GeoModelTool.h
IOVSVC_CALLBACK_ARGS
#define IOVSVC_CALLBACK_ARGS
short hand for IOVSvc call back argument list, to be used when no access to formal arguments is neede...
Definition: IOVSvcDefs.h:24
PixelDetectorTool::m_bcmTool
ToolHandle< IGeoSubDetTool > m_bcmTool
Definition: src/PixelDetectorTool.h:57
PixelDetectorTool::m_IBLParameterSvc
ServiceHandle< IIBLParameterSvc > m_IBLParameterSvc
Definition: src/PixelDetectorTool.h:49
PixelDetectorTool::m_devVersion
bool m_devVersion
Definition: src/PixelDetectorTool.h:54
PixelDetectorTool::PixelDetectorTool
PixelDetectorTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: src/PixelDetectorTool.cxx:36
IIBLParameterSvc.h
IInDetServMatBuilderTool.h
PixelDetectorTool::create
virtual StatusCode create() override final
Create the Detector Node corresponding to this tool.
Definition: src/PixelDetectorTool.cxx:70
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
test_pyathena.parent
parent
Definition: test_pyathena.py:15
GeoModelTool
Definition: GeoModelTool.h:17
IGeoSubDetTool.h
PixelDetectorTool::m_servicesOnLadder
bool m_servicesOnLadder
Definition: src/PixelDetectorTool.h:47
PixelDetectorTool::m_geometryDBSvc
ServiceHandle< IGeometryDBSvc > m_geometryDBSvc
Definition: src/PixelDetectorTool.h:60
InDetDD::PixelDetectorManager
Definition: PixelDetectorManager.h:47
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
PixelDetectorTool::m_buildDBM
bool m_buildDBM
Definition: src/PixelDetectorTool.h:55
PixelDetectorTool
Definition: src/PixelDetectorTool.h:25
PixelDetectorTool::m_tweakIBLDist
bool m_tweakIBLDist
Definition: src/PixelDetectorTool.h:52
PixelGeoModelAthenaComps
Class to hold various Athena components.
Definition: PixelGeoModelAthenaComps.h:16
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
PixelDetectorTool::m_services
bool m_services
Definition: src/PixelDetectorTool.h:46
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
PixelDetectorTool::align
virtual StatusCode align(IOVSVC_CALLBACK_ARGS) override
Definition: src/PixelDetectorTool.cxx:428
checker_macros.h
Define macros for attributes used to control the static checker.
PixelDetectorTool::m_athenaComps
PixelGeoModelAthenaComps * m_athenaComps
Definition: src/PixelDetectorTool.h:64
PixelDetectorTool::m_manager
const InDetDD::PixelDetectorManager * m_manager
Definition: src/PixelDetectorTool.h:61
PixelDetectorTool::m_alignable
bool m_alignable
Definition: src/PixelDetectorTool.h:51
PixelDetectorTool::clear
virtual StatusCode clear() override final
Definition: src/PixelDetectorTool.cxx:309
ServiceHandle< IIBLParameterSvc >
PixelDetectorTool::m_serviceBuilderTool
PublicToolHandle< IInDetServMatBuilderTool > m_serviceBuilderTool
Definition: src/PixelDetectorTool.h:59