AlgToolHistory.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_ALGTOOLHISTORY_H
2 #define GAUDIKERNEL_ALGTOOLHISTORY_H
3 
6 
7 class Property;
8 class AlgTool;
9 class JobHistory;
10 
11 #include <string>
12 #include <vector>
13 
23 
24 private: // data
25 
26  // Algtool full type.
28 
29  // Algtool version.
31 
32  // Algtool name.
34 
35  // Pointer to the algtool
36  const AlgTool *m_tool;
37 
38  // Properties.
40 
41  // Link to jobHistory
43 
44 public:
45 
46  AlgToolHistory(const AlgTool& alg, const JobHistory* job);
47 
48  AlgToolHistory(const std::string& algVersion,
49  const std::string& algName,
50  const std::string& algType,
51  const AlgTool* tool,
52  const PropertyList& props,
53  const JobHistory* job);
54 
55  // Destructor.
56  virtual ~AlgToolHistory() {};
57 
58  // Class IDs
59  virtual const CLID& clID() const { return classID(); }
60  static const CLID& classID();
61 
62  // Return the algtool type.
63  const std::string& algtool_type() const { return m_type; }
64 
65  // Return the algtool version.
66  const std::string& algtool_version() const { return m_version; }
67 
68  // Return the algtool name.
69  const std::string& algtool_name() const { return m_name; }
70 
71  // Pointer to the algtool
72  const AlgTool* algtool_instance() const { return m_tool; }
73 
74  // Return the algorithm properties.
75  const PropertyList& properties() const { return m_properties; }
76 
77  // Return the jobHistory
78  const JobHistory* jobHistory() const { return m_jobHistory; }
79 
80  void dump(std::ostream &, const bool isXML=false, int indent=0) const;
81 
82  const std::string& name() const { return algtool_name(); }
83  const std::string& type() const { return algtool_type(); }
84  const std::string& version() const { return algtool_version(); }
85 
86 
87 };
88 
89 // Output stream.
91 
92 #endif
93 
std::string m_version
const JobHistory * m_jobHistory
std::string m_name
PropertyList m_properties
const AlgTool * algtool_instance() const
static const CLID & classID()
Definition: HistoryObj.cpp:50
virtual void dump(std::ostream &, const bool isXML=false, int indent=0) const =0
Base class for History Objects.
Definition: HistoryObj.h:22
GAUDI_API std::ostream & operator<<(std::ostream &lhs, const AlgToolHistory &rhs)
JobHistory class definition.
Definition: JobHistory.h:24
const std::string & name() const
const JobHistory * jobHistory() const
virtual ~AlgToolHistory()
std::string m_type
STL class.
unsigned char m_version
Version number.
Definition: DataObject.h:35
const std::string & type() const
const AlgTool * m_tool
const PropertyList & properties() const
const std::string & algtool_type() const
virtual const CLID & clID() const
Retrieve reference to class definition structure.
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
AlgToolHistory class definition.
Property base class allowing Property* collections to be "homogeneous".
Definition: Property.h:38
Base class from which all the concrete tool classes should be derived.
Definition: AlgTool.h:45
const std::string & algtool_version() const
Interface for Versioned History Objects.
#define GAUDI_API
Definition: Kernel.h:107
STL class.
const std::string & version() const
const std::string & algtool_name() const