File indexing completed on 2025-02-21 10:00:31
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef GAUDIKERNEL_IHISTORYSVC_H
0012 #define GAUDIKERNEL_IHISTORYSVC_H
0013
0014 #include "GaudiKernel/ClassID.h"
0015 #include "GaudiKernel/IService.h"
0016
0017 #include <set>
0018 #include <string>
0019
0020 class JobHistory;
0021
0022 class ServiceHistory;
0023 class IService;
0024
0025 namespace Gaudi {
0026 class Algorithm;
0027 }
0028 class AlgorithmHistory;
0029
0030 class IAlgTool;
0031 class AlgToolHistory;
0032
0033 class DataHistory;
0034 class HistoryObj;
0035
0036
0037
0038
0039
0040
0041
0042
0043 class GAUDI_API IHistorySvc : virtual public IService {
0044 public:
0045
0046 DeclareInterfaceID( IHistorySvc, 2, 0 );
0047
0048
0049 virtual StatusCode registerJob() = 0;
0050 virtual StatusCode listProperties() const = 0;
0051 virtual JobHistory* getJobHistory() const = 0;
0052
0053
0054 virtual StatusCode registerSvc( const IService& ) = 0;
0055 virtual StatusCode listProperties( const IService& ) const = 0;
0056 virtual ServiceHistory* getServiceHistory( const IService& ) const = 0;
0057 virtual void getServiceHistory( std::set<ServiceHistory*>& ) const = 0;
0058
0059
0060 virtual StatusCode registerAlg( const Gaudi::Algorithm& ) = 0;
0061 virtual StatusCode listProperties( const Gaudi::Algorithm& ) const = 0;
0062 virtual AlgorithmHistory* getAlgHistory( const Gaudi::Algorithm& ) const = 0;
0063 virtual void getAlgHistory( std::set<AlgorithmHistory*>& ) const = 0;
0064
0065
0066 virtual StatusCode registerAlgTool( const IAlgTool& ) = 0;
0067 virtual StatusCode listProperties( const IAlgTool& ) const = 0;
0068 virtual AlgToolHistory* getAlgToolHistory( const IAlgTool& ) const = 0;
0069 virtual void getAlgToolHistory( std::set<AlgToolHistory*>& ) const = 0;
0070
0071
0072 virtual DataHistory* createDataHistoryObj( const CLID& id, const std::string& key, const std::string& storeName ) = 0;
0073 virtual DataHistory* getDataHistory( const CLID& id, const std::string& key, const std::string& storeName ) const = 0;
0074 };
0075
0076 #endif