ServiceHistory.h
Go to the documentation of this file.
1 // $Id: ServiceHistory.h,v 1.2 2008/06/04 12:35:15 marcocle Exp $
2 
3 #ifndef GAUDIKERNEL_SERVICEHISTORY_H
4 #define GAUDIKERNEL_SERVICEHISTORY_H
5 
6 #include "GaudiKernel/HistoryObj.h"
7 #include "GaudiKernel/IVersHistoryObj.h"
8 
9 #include <string>
10 #include <vector>
11 
12 class IService;
13 class Property;
14 class JobHistory;
15 
24 class GAUDI_API ServiceHistory: public HistoryObj, public IVersHistoryObj {
25 
26 public:
28  ServiceHistory(const IService*, const JobHistory* ) ;
29  ServiceHistory(const IService&, const JobHistory* ) ;
30 
31  virtual ~ServiceHistory();
32 
33  // Class IDs
34  virtual const CLID& clID() const { return classID(); }
35  static const CLID& classID();
36 
37  // Return the service properties.
38  const PropertyList& properties() const { return m_properties; }
39 
40  const IService* service() const { return m_pService; }
41 
42  const JobHistory* jobHistory() const { return m_jobHistory; }
43 
44  void dump(std::ostream &, const bool isXML=false, int indent=0) const;
45 
46  const std::string& name() const { return m_name; }
47  const std::string& type() const { return m_type; }
48  const std::string& version() const { return m_version; }
49 
50 
51 private:
52 
53  const IService* m_pService;
54  const JobHistory* m_jobHistory;
55  std::string m_name,m_type,m_version;
56  PropertyList m_properties;
57 
58 };
59 
60 // Output stream.
61 GAUDI_API std::ostream& operator<<(std::ostream& lhs, const ServiceHistory& rhs);
62 
63 #endif
#define GAUDI_API
Definition: Kernel.h:108
static const CLID & classID()
Definition: HistoryObj.cpp:62
virtual void dump(std::ostream &, const bool isXML=false, int indent=0) const =0
List of properties.
Definition: PropertyList.h:17
Base class for History Objects.
Definition: HistoryObj.h:24
GAUDI_API std::ostream & operator<<(std::ostream &lhs, const ServiceHistory &rhs)
JobHistory class definition.
Definition: JobHistory.h:25
unsigned char m_version
Version number.
Definition: DataObject.h:36
General service interface definition.
Definition: IService.h:19
unsigned int CLID
Class ID definition.
Definition: ClassID.h:9
unsigned char version() const
Retrieve version number of this object representation.
Definition: DataObject.h:77
Property base class allowing Property* collections to be "homogeneous".
Definition: Property.h:43
virtual const PropertyList & properties() const =0
virtual const CLID & clID() const
Retrieve reference to class definition structure.
Definition: HistoryObj.h:29
ServiceHistory class definition.
const std::string & name() const
Retreive DataObject name. It is the name when registered in the store.
Definition: DataObject.cpp:68
Interface for Versioned History Objects.
string type
Definition: gaudirun.py:151