ATLAS Offline Software
Loading...
Searching...
No Matches
MuonDetectorFactory001.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MuonDetectorFactory001_H
6#define MuonDetectorFactory001_H
7
10#include "GeoModelKernel/GeoVDetectorFactory.h"
11#include <string>
12
13class GeoPhysVol;
14class StoreGateSvc;
15class IRDBAccessSvc;
16
17namespace MuonGM {
18
20
21 class MuonDetectorFactory001 : public GeoVDetectorFactory {
22
23 typedef std::map<std::string, std::string> AltAsciiDBMap;
24
25 public:
26 // Constructor:
28
29 // Destructor:
31
32 // Creates the raw geometry tree: required,
33 virtual void create(GeoPhysVol *world) override;
34
35 virtual const MuonDetectorManager *getDetectorManager() const override;
37
38
39
40 inline void setDBAtlasVersion(const std::string&v);
41 inline void setDBMuonVersion(const std::string&v);
42 inline void setDBkey(const std::string&v);
43 inline void setDBnode(const std::string&v);
44
45 inline void setLayout(const std::string& str);
46 inline void setCutoutsFlag(int);
47 inline void setCutoutsBogFlag(int);
48 inline void setCtbBisFlag(int);
49 inline void setRDBAccess(IRDBAccessSvc *access);
50 inline void setAltAsciiDBMap(const AltAsciiDBMap& asciidbmap);
51 inline void setUseRDB(int rdb);
52
53 inline void setMinimalGeoFlag(int minimalGeo);
54
55 inline void setSelection(const std::vector<std::string>&,
56 const std::vector<int>&,
57 const std::vector<int>&);
58 inline void setDumpMemoryBreakDown(bool value);
59 inline void setCacheFillingFlag(int value);
60 inline void setMdtDeformationFlag(int mdtDeformationFlag);
61 inline void setNswAsBuiltParaFlag(int nswAsBuiltParaFlag);
62 inline void setFineClashFixingFlag(int value);
63 inline void hasCSC(bool value);
64 inline void hasSTgc(bool value);
65 inline void hasMM(bool value);
66 inline void setNSWAsBuiltAsciiPath(const std::string &, const std::string &);
67
68 inline void disableBEEShift(bool flag);
69 inline bool BEEShiftDisabled() const;
70
71
72 private:
73
74
75 std::string m_DBAtlasVersion{};
76 std::string m_DBMuonVersion{};
77 std::string m_DBkey{};
78 std::string m_DBnode{};
79
80 std::string m_layout{};
84 int m_rdb{1};
86
89 bool m_hasCSC{true};
90 bool m_hasSTgc{true};
91 bool m_hasMM{true};
92
93 bool m_disableBEEShift{false};
94
95 std::vector<std::string> m_selectedStations;
96 std::vector<int> m_selectedStEta;
97 std::vector<int> m_selectedStPhi;
98
99 std::unique_ptr<MuonSystemDescription> m_muon;
104 };
105
108 void MuonDetectorFactory001::setDBkey(const std::string&v) { m_DBkey = v; }
109 void MuonDetectorFactory001::setDBnode(const std::string&v) { m_DBnode = v; }
110 void MuonDetectorFactory001::setLayout(const std::string&str) { m_layout = str; }
117 void MuonDetectorFactory001::setMinimalGeoFlag(int minimalGeo) { m_minimalGeoFlag = minimalGeo; }
118
119 void MuonDetectorFactory001::setSelection(const std::vector<std::string>& vst,
120 const std::vector<int>& veta,
121 const std::vector<int>& vphi) {
122 m_selectedStations = vst;
123 m_selectedStEta = veta;
124 m_selectedStPhi = vphi;
125 }
126
129 void MuonDetectorFactory001::hasCSC(bool value) { m_hasCSC = value; }
130 void MuonDetectorFactory001::hasSTgc(bool value) { m_hasSTgc = value; }
131 void MuonDetectorFactory001::hasMM(bool value) { m_hasMM = value; }
134
135
136
137} // namespace MuonGM
138
139#endif
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
void setCacheFillingFlag(int value)
void setAltAsciiDBMap(const AltAsciiDBMap &asciidbmap)
void setDBMuonVersion(const std::string &v)
std::unique_ptr< MuonSystemDescription > m_muon
void setMdtDeformationFlag(int mdtDeformationFlag)
std::vector< std::string > m_selectedStations
virtual void create(GeoPhysVol *world) override
void setDBnode(const std::string &v)
void setSelection(const std::vector< std::string > &, const std::vector< int > &, const std::vector< int > &)
MuonDetectorFactory001(StoreGateSvc *pDetStore)
void setNswAsBuiltParaFlag(int nswAsBuiltParaFlag)
void setNSWAsBuiltAsciiPath(const std::string &, const std::string &)
void setRDBAccess(IRDBAccessSvc *access)
virtual const MuonDetectorManager * getDetectorManager() const override
void setDBkey(const std::string &v)
void setDBAtlasVersion(const std::string &v)
std::map< std::string, std::string > AltAsciiDBMap
void setLayout(const std::string &str)
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
The Athena Transient Store API.
Ensure that the Athena extensions are properly loaded.
Definition GeoMuonHits.h:27