32 {
33
35
37
38 ServiceHandle<IGeoDbTagSvc> geoDbTag(
"GeoDbTagSvc",
name());
40
41 ServiceHandle<IRDBAccessSvc> raccess(
"RDBAccessSvc",
name());
43
44 const std::string
AtlasVersion = geoDbTag->atlasVersion();
45 const std::string LucidVersion = raccess->getChildTag("LUCID",AtlasVersion,"ATLAS");
46
47 if(LucidVersion.empty()) {
48 ATH_MSG_DEBUG(
"LUCID is not part of the selected ATLAS geometry. Skipping");
49 return StatusCode::SUCCESS;
50 }
51
52 GeoModelExperiment* theExpt = nullptr;
54
56
58
59 LUCID_DetectorFactory theLUCID_Factory(
detStore().
get(),raccess.get());
60
61 theLUCID_Factory.create(world);
62 m_manager = theLUCID_Factory.getDetectorManager();
64
66 return StatusCode::SUCCESS;
67 }
68
69 return StatusCode::FAILURE;
70}
#define ATH_CHECK
Evaluate an expression and check for errors.
GeoPhysVol * getPhysVol()
Destructor.
void addManager(const GeoVDetectorManager *)
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
retrieve(aClass, aKey=None)