ATLAS Offline Software
IMetaDataTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ATHENAKERNEL_IMETADATATOOL_H
6 #define ATHENAKERNEL_IMETADATATOOL_H
7 
14 #include "GaudiKernel/IAlgTool.h"
15 #include "AthenaKernel/SourceID.h"
17 
21 class IMetaDataTool : virtual public IAlgTool {
22 
23 public: // Non-static members
24 
26  virtual StatusCode beginInputFile(const SG::SourceID& sid = "Serial") = 0;
27 
30  virtual StatusCode endInputFile(const SG::SourceID& sid = "Serial") = 0;
31 
33  virtual StatusCode metaDataStop() = 0;
34 
36  static const InterfaceID& interfaceID();
37 };
38 
39 inline const InterfaceID& IMetaDataTool::interfaceID() {
40  static const InterfaceID IID("IMetaDataTool", 1, 0);
41  return(IID);
42 }
43 
44 #endif
IMetaDataTool::metaDataStop
virtual StatusCode metaDataStop()=0
Function called when the tool should prepare to write its metadata.
ILockableTool.h
Provide an interface for locking and unlocking a tool externally.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IMetaDataTool::endInputFile
virtual StatusCode endInputFile(const SG::SourceID &sid="Serial")=0
Function called when the currently open input file got completely processed.
IMetaDataTool::beginInputFile
virtual StatusCode beginInputFile(const SG::SourceID &sid="Serial")=0
Function called when a new input file is opened.
SourceID.h
Type used to identify a metadata source.
IMetaDataTool::interfaceID
static const InterfaceID & interfaceID()
Gaudi boilerplate.
Definition: IMetaDataTool.h:39
SG::SourceID
std::string SourceID
Definition: AthenaKernel/AthenaKernel/SourceID.h:23
IMetaDataTool
This class provides the interface for MetaDataTools.
Definition: IMetaDataTool.h:21