| # Gaudi Framework, version v21r7p1 |

Home |  | Generated: 15 Feb 2010

# AlgToolHistory.h

Go to the documentation of this file.

    00001 // $Id: AlgToolHistory.h,v 1.1 2006/11/09 10:24:04 mato Exp $
    00002
    00003 #ifndef GAUDIKERNEL_ALGTOOLHISTORY_H
    00004 #define GAUDIKERNEL_ALGTOOLHISTORY_H
    00005
    00006 #include "GaudiKernel/HistoryObj.h"
    00007
    00008 class Property;
    00009 class AlgTool;
    00010 class JobHistory;
    00011
    00012 #include <string>
    00013 #include <vector>
    00014
    00023 class GAUDI_API AlgToolHistory: public HistoryObj {
    00024
    00025 public:  // typedefs
    00026
    00027   // List of properties. This may change.
    00028   typedef std::vector<Property*> PropertyList;
    00029
    00030 private:  // data
    00031
    00032   // Algtool full type.
    00033   std::string m_type;
    00034
    00035   // Algtool version.
    00036   std::string m_version;
    00037
    00038   // Algtool name.
    00039   std::string m_name;
    00040
    00041   // Pointer to the algtool
    00042   const AlgTool *m_tool;
    00043
    00044   // Properties.
    00045   PropertyList m_properties;
    00046
    00047   // Link to jobHistory
    00048   const JobHistory *m_jobHistory;
    00049
    00050 public:
    00051
    00052   AlgToolHistory(const AlgTool& alg, const JobHistory* job);
    00053
    00054   AlgToolHistory(const std::string& algVersion,
    00055                  const std::string& algName,
    00056                  const std::string& algType,
    00057                  const AlgTool* tool,
    00058                  const PropertyList& props,
    00059                  const JobHistory* job);
    00060
    00061   // Destructor.
    00062   virtual ~AlgToolHistory() {};
    00063
    00064   // Class IDs
    00065   virtual const CLID& clID() const { return classID(); }
    00066   static const CLID& classID();
    00067
    00068  // Return the algtool type.
    00069   const std::string& algtool_type() const { return m_type; }
    00070
    00071   // Return the algtool version.
    00072   const std::string& algtool_version() const { return m_version; }
    00073
    00074   // Return the algtool name.
    00075   const std::string& algtool_name() const { return m_name; }
    00076
    00077   // Pointer to the algtool
    00078   const AlgTool* algtool_instance() const { return m_tool; }
    00079
    00080   // Return the algorithm properties.
    00081   const PropertyList& properties() const { return m_properties; }
    00082
    00083 };
    00084
    00085 // Output stream.
    00086 GAUDI_API std::ostream& operator<<(std::ostream& lhs, const AlgToolHistory& rhs);
    00087
    00088 #endif
    00089