18 const std::string& element,
19 const std::string& tag,
20 const std::string&
node)
26 SmartIF<IRDBAccessSvc> iAccessSvc(Gaudi::svcLocator()->service(
"RDBAccessSvc"));
30 LogStream << MSG::FATAL <<
" Could not initialize RDBAccessSvc! ((RP no."<<eRPName<<
", Fiber type "<<eFType<<
")"<<
endmsg;
32 throw GaudiException(
" Could not initalize RDBAccessSvc ",
"ALFA_RDBAccess::ReadGeometry", StatusCode::FAILURE);
48 std::list<FIBERDATA> listFData;
56 LogStream << MSG::FATAL <<
" ERROR: Unable to retrieve " << element <<
" data from database" <<
endmsg;
65 FiberData.
nPotID = (*AccessSvc_iter)->getInt(
"POTID");
66 FiberData.
nLayerID = (*AccessSvc_iter)->getInt(
"COORDID");
67 FiberData.
nFiberID = (*AccessSvc_iter)->getInt(
"FIBREID");
68 FiberData.
fSlope = (*AccessSvc_iter)->getDouble(
"SLOPE");
69 FiberData.
fOffset = (*AccessSvc_iter)->getDouble(
"OFFSET");
70 FiberData.
fZPos = (*AccessSvc_iter)->getDouble(
"ZL");
72 listFData.push_back(FiberData);
75 if (!listFData.empty())
struct _FIBERDATA FIBERDATA
bool ReadGeometry(const eRPotName eRPName, eFiberType eFType, const std::string &element, const std::string &tag, const std::string &node)
bool ReadFiberGeometry(IRDBAccessSvc *iAccessSvc, const std::string &element, const std::string &tag, const std::string &node)
std::list< FIBERDATA > m_ListFiberData
IRDBRecordset_ptr m_fiberGeometry
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
virtual IRDBRecordset_ptr getRecordsetPtr(const std::string &node, const std::string &tag, const std::string &tag2node="", const std::string &connName="ATLASDD")=0
Provides access to the Recordset object containing HVS-tagged data.
RecordsVector::const_iterator const_iterator
IMessageSvc * getMessageSvc(bool quiet=false)