|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef ATHENAROOTKERNEL_IROOTSVC_H
8 #define ATHENAROOTKERNEL_IROOTSVC_H 1
16 #include "GaudiKernel/IInterface.h"
27 namespace Athena {
class RootConnection; }
virtual const Token * writeObject(const Placement &placement, const RootType &type, const void *pObj)=0
Write object of a given class to Root.
This class provides the implementation of Athena::RootConnection class, similar to Gaudi IDataConnect...
This class holds all the necessary information to guide the writing of an object in a physical place.
virtual void destructObject(const RootType &type, void *pObj) const =0
Destruct a given object of type RootType.
virtual void * createObject(const RootType &type) const =0
Create an object of a given RootType.
virtual StatusCode connect(const std::string &fname)=0
Connect the file fname to the service.
virtual StatusCode commitOutput()=0
Commit data and flush buffer.
virtual void * readObject(const Token &token, void *&pObj)=0
Read object from Root.
This class provides a token that identifies in a unique way objects on the persistent storage.
virtual Athena::RootConnection * connection(const std::string &fname)=0
Get the RootConnection associated with file fname
Some weak symbol referencing magic...
virtual StatusCode disconnect(const std::string &fname)=0
Disconnect the file fname from the service.
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual RootType getType(const std::type_info &type) const =0
DeclareInterfaceID(IRootSvc, 1, 0)
Declare interface ID.
This class provides the interface to the ROOT software.
virtual StatusCode open(const std::string &fname, const std::string &mode)=0
Open the file fname with open mode mode