| The Gaudi Framework v32r1 (f65d50dc)

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