22 using namespace Gaudi;
36 return makeError(
"Failed to access IDataManagerSvc interface.");
39 if ( m_log )
delete m_log;
54 return RootConverter::finalize();
58 const string RootStatCnv::containerName(
IRegistry* pReg)
const {
60 long loc = path.find(
'/',1);
61 string local =
"<local>";
64 loc = path.find(
'/',++loc);
66 local += path.substr(loc,path.length()-loc);
75 const string RootStatCnv::fileName(
IRegistry* pReg)
const {
76 string path = topLevel(pReg);
78 dataProvider()->retrieveObject(path, pObj);
89 const string RootStatCnv::topLevel(
IRegistry* pReg)
const {
92 size_t idx = path.find(
'/', 1);
93 if ( idx != string::npos ) {
94 idx = path.find(
'/', idx+1);
95 if ( idx != string::npos ) {
96 path = path.substr(0, idx);
120 RootStatCnv::saveDescription(
const string&
path,
127 StatusCode status = m_dbMgr->connectDatabase(path, IDataConnection::UPDATE, &con);
129 TClass* cl = gROOT->GetClass(
"Gaudi::RootNTupleDescriptor",kTRUE);
133 TBranch* b = con->
getBranch(
"##Descriptors",
"GaudiStatisticsDescription",cl,ptr,512,0);
135 dsc->description = desc;
137 dsc->container = ident;
146 return makeError(
"Failed to access ROOT branch GaudiStatisticsDescription");
148 return makeError(
"Failed to access TClass RootNTupleDescriptor");
150 return makeError(
"Failed to access Tuple file:"+path);