21 using namespace Gaudi;
36 return makeError(
"Failed to access IDataManagerSvc interface." );
55 long loc = path.
find(
'/', 1 );
56 string local =
"<local>";
59 loc = path.
find(
'/', ++loc );
61 local += path.
substr( loc );
89 size_t idx = path.
find(
'/', 1 );
90 if ( idx != string::npos ) {
91 idx = path.
find(
'/', idx + 1 );
92 if ( idx != string::npos ) {
93 path = path.
substr( 0, idx );
122 TClass* cl = gROOT->GetClass(
"Gaudi::RootNTupleDescriptor", kTRUE );
126 TBranch* b = con->
getBranch(
"##Descriptors",
"GaudiStatisticsDescription", cl, ptr, 512, 0 );
132 b->SetAddress( &ptr );
139 return makeError(
"Failed to access ROOT branch GaudiStatisticsDescription" );
141 return makeError(
"Failed to access TClass RootNTupleDescriptor" );
143 return makeError(
"Failed to access Tuple file:" + path );
const std::string & name() const
Retrun physical file name.
MsgStream & log() const
Helper to use mesage logger.
constexpr static const auto FAILURE
Definition of the MsgStream class used to transmit messages.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
virtual const std::string topLevel(IRegistry *pReg) const
Retrieve the full path of the file a given object is placed into.
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
RootCnvSvc * m_dbMgr
Conversion service needed for proper operation to forward requests.
StatusCode initialize() override
Initialize the converter.
SmartIF< IMessageSvc > & msgSvc() const
Retrieve pointer to message service.
StatusCode makeError(const std::string &msg, bool throw_exception=false) const
Helper method to issue error messages.
StatusCode connectDatabase(const std::string &dataset, int mode, RootDataConnection **con)
Connect the output file to the service with open mode.
SmartIF< IDataManagerSvc > m_dataMgr
Reference to data manager service to manipulate the TES.
StatusCode finalize() override
Initialize the converter.
std::string optional
Optional description.
virtual const id_type & identifier() const =0
Full identifier (or key)
StatusCode finalize() override
Finalize converter object.
This class is used for returning status codes from appropriate routines.
virtual const std::string fileName(IRegistry *pReg) const
Retrieve the name of the file a given object is placed into.
StatusCode saveDescription(const std::string &path, const std::string &ident, const std::string &desc, const std::string &opt, const CLID &clid)
Save statistics object description.
std::string description
Description string.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
virtual StatusCode retrieveObject(IRegistry *pDirectory, boost::string_ref path, DataObject *&pObject)=0
Retrieve object identified by its directory entry.
unsigned int CLID
Class ID definition.
constexpr static const auto SUCCESS
TBranch * getBranch(boost::string_ref section, boost::string_ref branch_name)
Access data branch by name: Get existing branch in read only mode.
SmartIF< IDataProviderSvc > & dataProvider() const override
Get Data provider service.
std::string container
Identifier of description.
void reset(TYPE *ptr=nullptr)
Set the internal pointer to the passed one disposing of the old one.
unsigned long clid
Class ID of the described object.
std::unique_ptr< MsgStream > m_log
Reference to logger object.
virtual const std::string containerName(IRegistry *pDir) const
Retrieve the name of the container a given object is placed into.
StatusCode initialize() override
Initialize converter object.
A DataObject is the base class of any identifiable object on any data store.
Concrete implementation of the IDataConnection interface to access ROOT files.
Helper functions to set/get the application return code.
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Small class representing an N tuple file in the transient store.
Description: Definition of the ROOT data converter.