All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IHistorySvc.h
Go to the documentation of this file.
1 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiKernel/GaudiKernel/IHistorySvc.h,v 1.1 2004/07/14 18:13:57 leggett Exp $
2 
3 #ifndef GAUDIKERNEL_IHISTORYSVC_H
4 #define GAUDIKERNEL_IHISTORYSVC_H
5 
6 
7 #include "GaudiKernel/IService.h"
8 #include "GaudiKernel/ClassID.h"
9 
10 #include <string>
11 #include <set>
12 
13 class JobHistory;
14 
15 class ServiceHistory;
16 class IService;
17 
18 class Algorithm;
19 class AlgorithmHistory;
20 
21 class IAlgTool;
22 class AlgToolHistory;
23 
24 class DataHistory;
25 class HistoryObj;
26 
34 class GAUDI_API IHistorySvc : virtual public IService {
35 public:
38 
39  // Job level objects
40  virtual StatusCode registerJob() = 0;
41  virtual StatusCode listProperties() const = 0;
42  virtual JobHistory* getJobHistory() const = 0;
43 
44  // Service level objects
45  virtual StatusCode registerSvc(const IService&) = 0;
46  virtual StatusCode listProperties(const IService&) const = 0;
47  virtual ServiceHistory* getServiceHistory(const IService&) const = 0;
48  virtual void getServiceHistory(std::set<ServiceHistory*>&) const = 0;
49 
50  // Algorithm level objects
51  virtual StatusCode registerAlg(const Algorithm&) = 0;
52  virtual StatusCode listProperties(const Algorithm&) const = 0;
53  virtual AlgorithmHistory* getAlgHistory(const Algorithm&) const = 0;
54  virtual void getAlgHistory(std::set<AlgorithmHistory*>&) const = 0;
55 
56  // AlgTool level objects
57  virtual StatusCode registerAlgTool(const IAlgTool&) = 0;
58  virtual StatusCode listProperties(const IAlgTool&) const = 0;
59  virtual AlgToolHistory* getAlgToolHistory(const IAlgTool&) const = 0;
60  virtual void getAlgToolHistory(std::set<AlgToolHistory*>&) const = 0;
61 
62  // DataObj level objects
63  virtual DataHistory* createDataHistoryObj(const CLID& id,
64  const std::string& key,
65  const std::string& storeName) = 0;
66  virtual DataHistory* getDataHistory(const CLID& id, const std::string& key,
67  const std::string& storeName) const = 0;
68 
69 };
70 
71 #endif // GAUDIKERNEL_IHISTORYSVC_H
AlgorithmHistory class definition.
Base class for History Objects.
Definition: HistoryObj.h:24
JobHistory class definition.
Definition: JobHistory.h:25
DeclareInterfaceID(IService, 3, 0)
InterfaceID.
General service interface definition.
Definition: IService.h:19
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:30
DataHistory class definition.
Definition: DataHistory.h:25
unsigned int CLID
Class ID definition.
Definition: ClassID.h:9
AlgToolHistory class definition.
Base class from which all concrete algorithm classes should be derived.
Definition: Algorithm.h:61
The interface implemented by the AlgTool base class.
Definition: IAlgTool.h:23
ServiceHistory class definition.
#define GAUDI_API
Definition: Kernel.h:108
Definition of the IHistorySvc interface class.
Definition: IHistorySvc.h:34