Gaudi Framework, version v25r2

Home   Generated: Wed Jun 4 2014
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
AlgToolHistory.cpp
Go to the documentation of this file.
1 
2 //
3 // $Id: AlgToolHistory.cpp,v 1.1 2006/11/09 10:24:05 mato Exp $
4 //
5 // GaudiHistory/AlgToolHistory.cpp
6 //
7 // Contains history information for an AlgTool
8 //
9 //
10 // @author: Charles Leggett
11 //
13 
15 #include "GaudiKernel/JobHistory.h"
16 #include "GaudiKernel/AlgTool.h"
17 
18 #include <iostream>
19 
20 using std::ostream;
21 using std::endl;
22 
24 :
25  m_type(alg.type()),
26  m_version("UNKNOWN"),
27  m_name(alg.name()),
28  m_tool( &alg ),
29  m_properties(alg.getProperties()),
30  m_jobHistory(job)
31 {
32 }
33 
34 //**********************************************************************
35 
36 AlgToolHistory::AlgToolHistory(const std::string& algVersion,
37  const std::string& algName,
38  const std::string& algType,
39  const AlgTool* tool,
40  const PropertyList& props,
41  const JobHistory* job):
42  m_type(algType), // FIXME type_info???
43  m_version(algVersion),
44  m_name(algName),
45  m_tool(tool),
46  m_properties(props),
47  m_jobHistory(job)
48 {}
49 
50 //**********************************************************************
51 
53 
54  static CLID CLID_AlgToolHistory = 171959758; // from `clid AlgToolHistory`
55  return CLID_AlgToolHistory;
56 
57 }
58 
59 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
60 
61 void
62 AlgToolHistory::dump(std::ostream& ost, const bool isXML, int ind) const {
63 
64  if (!isXML) {
65 
66  ost << "Name: " << algtool_name() << endl;
67  ost << "Type: " << algtool_type() << endl;
68  ost << "Version: " << algtool_version() << endl;
69  ost << "Parent: " << algtool_instance()->name() << endl;
70 
71  //Properties
72  ost << "Properties: [" << endl;
73 
74  for ( AlgToolHistory::PropertyList::const_iterator
75  ipprop=properties().begin();
76  ipprop!=properties().end(); ++ipprop ) {
77  const Property& prop = **ipprop;
78  prop.fillStream(ost);
79  ost << endl;
80  }
81  ost << "]" << endl;
82 
83  } else {
84 
85  ind += 2;
86  indent(ost,ind);
87  ost << "<COMPONENT name=\"" << algtool_name()
88  << "\" class=\"" << convert_string(algtool_type())
89  << "\" version=\"" << convert_string(algtool_version())
90  << "\" parent=\"" << convert_string(algtool_instance()->name())
91  << "\">" << endl;
92 
93  for ( AlgToolHistory::PropertyList::const_iterator
94  ipprop=properties().begin();
95  ipprop!=properties().end(); ++ipprop ) {
96  const Property& prop = **ipprop;
97 
98  indent(ost,ind+2);
99  ost << "<PROPERTY name=\"" << prop.name()
100  << "\" value=\"" << convert_string(prop.toString())
101  << "\" documentation=\"" << convert_string(prop.documentation())
102  << "\">" << endl;
103  }
104 
105  indent(ost,ind);
106  ost << "</COMPONENT>" << endl;
107 
108  }
109 
110 }
111 
112 //**********************************************************************
113 
114 ostream& operator<<(ostream& lhs, const AlgToolHistory& rhs) {
115 
116  rhs.dump(lhs,false);
117 
118  return lhs;
119 }

Generated at Wed Jun 4 2014 14:48:57 for Gaudi Framework, version v25r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004