All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 
8 
9 #include <string>
10 #include <vector>
11 
12 class IService;
13 class Property;
14 class JobHistory;
15 
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 
55  std::string m_name,m_type,m_version;
57 
58 };
59 
60 // Output stream.
61 GAUDI_API std::ostream& operator<<(std::ostream& lhs, const ServiceHistory& rhs);
62 
63 #endif
const std::string & name() const
static const CLID & classID()
Definition: HistoryObj.cpp:62
virtual void dump(std::ostream &, const bool isXML=false, int indent=0) const =0
std::vector< Property * > PropertyList
Base class for History Objects.
Definition: HistoryObj.h:24
JobHistory class definition.
Definition: JobHistory.h:25
PropertyList m_properties
GAUDI_API std::ostream & operator<<(std::ostream &lhs, const ServiceHistory &rhs)
const IService * service() const
unsigned char m_version
Version number.
Definition: DataObject.h:36
const std::string & version() const
General service interface definition.
Definition: IService.h:19
const std::string & type() const
unsigned int CLID
Class ID definition.
Definition: ClassID.h:9
Property base class allowing Property* collections to be "homogeneous".
Definition: Property.h:43
const JobHistory * jobHistory() const
const PropertyList & properties() const
const JobHistory * m_jobHistory
std::string m_version
ServiceHistory class definition.
Interface for Versioned History Objects.
virtual const CLID & clID() const
Retrieve reference to class definition structure.
#define GAUDI_API
Definition: Kernel.h:108
const IService * m_pService