ATLAS Offline Software
BLM_Builder.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 BLMBUILDER_H
6 #define BLMBUILDER_H
7 
11 #include <vector>
12 
13 class GeoVPhysVol;
14 class StoreGateSvc;
15 
16 namespace InDetDD
17 {
18 
24  class BLM_Builder : public extends<AthAlgTool, IGeoSubDetTool>
25  {
26  public:
27  BLM_Builder(const std::string&,const std::string&,const IInterface*);
28 
30  virtual ~BLM_Builder () = default;
31 
33  virtual StatusCode initialize() override;
35  virtual StatusCode finalize() override;
37  virtual StatusCode build(GeoVPhysVol* parent) override;
38 
40  // Register callback function on ConDB object
41  virtual StatusCode registerCallback( StoreGateSvc* detStore ) override;
42 
43  // Callback function itself
44  virtual StatusCode align(IOVSVC_CALLBACK_ARGS) override;
45 
46  private:
48  std::vector<double> m_module0;
49  std::vector<double> m_moduleI;
50  std::vector<double> m_moduleII;
51  std::vector<double> m_moduleIII;
52  std::vector<double> m_moduleIV;
53  std::vector<double> m_moduleV;
54  std::vector<double> m_moduleVI;
55  std::vector<double> m_moduleVII;
56  std::vector<double> m_moduleVIII;
57  std::vector<double> m_moduleIX;
58  std::vector<double> m_moduleX;
59  std::vector<double> m_moduleXI;
60  unsigned int m_moduleon;
61  bool m_blmon;
63  };
64 } // end of namespace
65 
66 #endif
InDetDD::BLM_Builder::BLM_Builder
BLM_Builder(const std::string &, const std::string &, const IInterface *)
Definition: BLM_Builder.cxx:28
InDetDD::BLM_Builder::m_moduleIX
std::vector< double > m_moduleIX
Definition: BLM_Builder.h:57
InDetDD::BLM_Builder::m_moduleV
std::vector< double > m_moduleV
Definition: BLM_Builder.h:53
InDetDD::BLM_Builder::align
virtual StatusCode align(IOVSVC_CALLBACK_ARGS) override
Definition: BLM_Builder.cxx:256
InDetDD::BLM_Builder::m_moduleXI
std::vector< double > m_moduleXI
Definition: BLM_Builder.h:59
InDetDD::BLM_Builder::m_moduleVII
std::vector< double > m_moduleVII
Definition: BLM_Builder.h:55
InDetDD::BLM_Builder::m_moduleon
unsigned int m_moduleon
Definition: BLM_Builder.h:60
InDetDD::BLM_Builder::finalize
virtual StatusCode finalize() override
standard Athena-Algorithm method
Definition: BLM_Builder.cxx:80
InDetDD::BLM_Builder::m_module0
std::vector< double > m_module0
member variables for algorithm properties:
Definition: BLM_Builder.h:48
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
InDetDD::BLM_Builder::initialize
virtual StatusCode initialize() override
standard Athena-Algorithm method
Definition: BLM_Builder.cxx:68
InDetDD::BLM_Builder::m_moduleVI
std::vector< double > m_moduleVI
Definition: BLM_Builder.h:54
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:125
InDetDD::BLM_Builder::build
virtual StatusCode build(GeoVPhysVol *parent) override
build the BCM geometry
Definition: BLM_Builder.cxx:88
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
IGeoSubDetTool.h
InDetDD::BLM_Builder
Definition: BLM_Builder.h:25
InDetDD::BLM_Builder::m_moduleVIII
std::vector< double > m_moduleVIII
Definition: BLM_Builder.h:56
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
InDetDD::BLM_Builder::m_moduleIV
std::vector< double > m_moduleIV
Definition: BLM_Builder.h:52
InDetDD::BLM_Builder::~BLM_Builder
virtual ~BLM_Builder()=default
default destructor
InDetDD::BLM_Builder::m_BDparameters
bool m_BDparameters
Definition: BLM_Builder.h:62
InDetDD::BLM_Builder::m_moduleX
std::vector< double > m_moduleX
Definition: BLM_Builder.h:58
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
InDetDD::BLM_Builder::registerCallback
virtual StatusCode registerCallback(StoreGateSvc *detStore) override
For alignment.
Definition: BLM_Builder.cxx:249
InDetDD::BLM_Builder::m_moduleII
std::vector< double > m_moduleII
Definition: BLM_Builder.h:50
InDetDD::BLM_Builder::m_moduleIII
std::vector< double > m_moduleIII
Definition: BLM_Builder.h:51
IOVSvcDefs.h
defines and typedefs for IOVSvc
InDetDD::BLM_Builder::m_blmon
bool m_blmon
Definition: BLM_Builder.h:61
InDetDD::BLM_Builder::m_moduleI
std::vector< double > m_moduleI
Definition: BLM_Builder.h:49