The Gaudi Framework  master (b9786168)
Loading...
Searching...
No Matches
IFileSvc.h
Go to the documentation of this file.
1/***********************************************************************************\
2* (c) Copyright 2024-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3* *
4* This software is distributed under the terms of the Apache version 2 licence, *
5* copied verbatim in the file "COPYING". *
6* *
7* In applying this licence, CERN does not waive the privileges and immunities *
8* granted to it by virtue of its status as an Intergovernmental Organization *
9* or submit itself to any jurisdiction. *
10\***********************************************************************************/
11#pragma once
12
14#include <memory>
15#include <string>
16
17class TFile;
18
19namespace Gaudi {
20 namespace Interfaces {
27 struct IFileSvc : virtual IInterface {
28 // InterfaceID declaration.
30
32 virtual std::shared_ptr<TFile> getFile( const std::string& identifier ) = 0;
33
35 virtual bool hasIdentifier( const std::string& identifier ) const = 0;
36 };
37 } // namespace Interfaces
38} // namespace Gaudi
Definition of the basic interface.
Definition IInterface.h:225
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition __init__.py:1
Interface for a component that manages file access within Gaudi applications.
Definition IFileSvc.h:27
virtual bool hasIdentifier(const std::string &identifier) const =0
Check if a given identifier is known to the service.
virtual std::shared_ptr< TFile > getFile(const std::string &identifier)=0
Get a shared pointer to a TFile based on an identifier.
DeclareInterfaceID(IFileSvc, 1, 1)