The Gaudi Framework  master (d98a2936)
Gaudi::Interfaces::IFileSvc Struct Referenceabstract

Interface for a component that manages file access within Gaudi applications. More...

#include </builds/gaudi/Gaudi/GaudiKernel/include/Gaudi/Interfaces/IFileSvc.h>

Inheritance diagram for Gaudi::Interfaces::IFileSvc:
Collaboration diagram for Gaudi::Interfaces::IFileSvc:

Public Member Functions

 DeclareInterfaceID (IFileSvc, 1, 1)
 
virtual std::shared_ptr< TFile > getFile (const std::string &identifier)=0
 Get a shared pointer to a TFile based on an identifier. More...
 
virtual bool hasIdentifier (const std::string &identifier) const =0
 Check if a given identifier is known to the service. More...
 
- Public Member Functions inherited from IInterface
template<Gaudi::IsInterface TARGET>
TARGET * cast ()
 
template<Gaudi::IsInterface TARGET>
TARGET const * cast () const
 
template<typename TARGET >
 requires (!Gaudi::IsInterface< TARGET >) TARGET *cast()
 
template<typename TARGET >
 requires (!Gaudi::IsInterface< TARGET >) TARGET const *cast() const
 
virtual std::vector< std::string > getInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces. More...
 
virtual unsigned long addRef () const =0
 Increment the reference count of Interface instance. More...
 
virtual unsigned long release () const =0
 Release Interface instance. More...
 
virtual unsigned long refCount () const =0
 Current reference count. More...
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance. More...
 
virtual ~IInterface ()=default
 Virtual destructor. More...
 
virtual void const * i_cast (const InterfaceID &) const =0
 
void * i_cast (const InterfaceID &iid)
 

Additional Inherited Members

- Public Types inherited from IInterface
enum  Status : StatusCode::code_t {
  Status::FAILURE = 0, Status::SUCCESS = 1, Status::NO_INTERFACE, Status::VERSMISMATCH,
  Status::LAST_ERROR
}
 Return status. More...
 
using iid = Gaudi::InterfaceId< IInterface, 0, 0 >
 Interface ID. More...
 
using ext_iids = Gaudi::interface_list< iid >
 Extra interfaces. More...
 
- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface. More...
 
- Protected Member Functions inherited from IInterface
virtual unsigned long decRef () const =0
 Decrement reference count and return the new reference count. More...
 

Detailed Description

Interface for a component that manages file access within Gaudi applications.

This service allows algorithms to access ROOT files via a centralized service, ensuring that files are shared appropriately and not unintentionally overwritten or duplicated.

Definition at line 27 of file IFileSvc.h.

Member Function Documentation

◆ DeclareInterfaceID()

Gaudi::Interfaces::IFileSvc::DeclareInterfaceID ( IFileSvc  ,
,
 
)

◆ getFile()

virtual std::shared_ptr<TFile> Gaudi::Interfaces::IFileSvc::getFile ( const std::string &  identifier)
pure virtual

Get a shared pointer to a TFile based on an identifier.

◆ hasIdentifier()

virtual bool Gaudi::Interfaces::IFileSvc::hasIdentifier ( const std::string &  identifier) const
pure virtual

Check if a given identifier is known to the service.


The documentation for this struct was generated from the following file: