![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
13 #include "GaudiKernel/IService.h"
14 #include "GaudiKernel/ISvcLocator.h"
15 #include "GaudiKernel/MsgStream.h"
80 if (StatusCode::SUCCESS !=
sc) {
81 log << MSG::ERROR <<
"Could not find GeoDbTagSvc" <<
endmsg;
83 return (StatusCode::FAILURE);
90 sc=service(
"RDBAccessSvc",accessSvc);
91 if (StatusCode::SUCCESS !=
sc) {
93 <<
"Could not find RDBAccessSvc"
96 return (StatusCode::FAILURE);
99 std::string detectorKey = LArVersion.empty() ?
AtlasVersion : LArVersion;
100 std::string detectorNode = LArVersion.empty() ?
"ATLAS" :
"LAr";
101 log << MSG::INFO <<
"Keys for LAr are " << detectorKey <<
" " << detectorNode <<
endmsg;
104 log << MSG::INFO <<
"Creating the LAr " <<
endmsg;
105 log << MSG::INFO <<
"LAr Geometry Options:" <<
endmsg;
115 if (StatusCode::SUCCESS !=
sc) {
117 <<
"Could not find GeoModelExperiment ATLAS"
120 return (StatusCode::FAILURE);
125 std::string geometryLayout =
"Atlas";
126 std::string LArTag = accessSvc->
getChildTag(
"LAr",detectorKey,detectorNode);
144 GeoIntrusivePtr<GeoPhysVol>world=&*theExpt->
getPhysVol();
145 theLArFactory.create(world);
146 }
catch (
const std::bad_alloc&) {
149 return StatusCode::FAILURE;
152 theExpt->
addManager(theLArFactory.getDetectorManager());
153 sc=
detStore()->record(theLArFactory.getDetectorManager(),theLArFactory.getDetectorManager()->getName());
154 if (StatusCode::SUCCESS !=
sc) {
156 <<
"Could not record LArFactory to DetStore"
159 return (StatusCode::FAILURE);
163 return StatusCode::SUCCESS;
169 return StatusCode::FAILURE;
GeoPhysVol * getPhysVol()
Destructor.
void Coldnose(bool value)
void TableYPosition(double value)
void Printstep(bool value)
void CryoXPosition(double value)
Definition of the abstract IRDBAccessSvc interface.
virtual std::string getChildTag(const std::string &childNode, const std::string &parentTag, const std::string &parentNode, const std::string &connName="ATLASDD")=0
Gets the tag name for the node by giving its parent node tag.
msgSvc
Provide convenience handles for various services.
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
::StatusCode StatusCode
StatusCode definition for legacy code.
void Checkother(bool value)
void Checkprim(bool value)
void addManager(const GeoVDetectorManager *)
Definition of the abstract IRDBRecord interface.
Definition of the abstract IRDBRecordset interface.