Create the Detector Node corresponding to this tool.
34{
35
36
37
38
39 GeoModelExperiment * theExpt{nullptr};
41
42
44
47
49
50 GeoModelIO::ReadGeoModel* sqliteReader =
m_geoDbTagSvc->getSqliteReader();
51
52 if (sqliteReader) {
53 InDetServMatFactory_Lite factoryLite;;
56 }
57 else {
58 DecodeVersionKey versionKey(
m_geoDbTagSvc.get(),
"InnerDetector");
59
60 std::string versionTag = accessSvc->getChildTag("InDetServices", versionKey.tag(), versionKey.node());
62
63
64 if (versionTag.empty()) {
65 ATH_MSG_INFO(
"No InDetService Version. InDetService will not be built.");
66 ATH_MSG_DEBUG(
"InnerDetector Version Tag: " << versionKey.tag() <<
" at Node: " << versionKey.node());
67 return StatusCode::SUCCESS;
68 }
69
70 ATH_MSG_DEBUG(
"Keys for InDetServMat Switches are " << versionKey.tag() <<
" " << versionKey.node());
71
72 std::string versionName{"CSC"};
75 ATH_MSG_INFO(
"Overriding version name: " << versionName);
76 }
77 ATH_MSG_INFO(
"Building Inner Detector Service Material. Version: " << versionName);
78
79
81
82
87
88
89 if (versionName == "SLHC") {
93 }
94 else {
97 }
98 }
99 else {
100
102 }
103 }
104
105 if (versionName == "CSC") {
108 theIDSM.create(world);
110 } else {
111
113 return StatusCode::FAILURE;
114 }
115 }
116
120 }
121 else {
123 return StatusCode::FAILURE;
124 }
125
126 return StatusCode::SUCCESS;
127}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
GeoPhysVol * getPhysVol()
Destructor.
void addManager(const GeoVDetectorManager *)
virtual const InDetDD::InDetServMatManager * getDetectorManager() const override
virtual void create(GeoPhysVol *world) override
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
retrieve(aClass, aKey=None)