![]() |
|
|
Generated: 8 Jan 2009 |
00001 // $Id: JobHistory.h,v 1.1 2006/11/09 10:24:05 mato Exp $ 00002 00003 #ifndef GAUDIKERNEL_JOBHISTORY_H 00004 #define GAUDIKERNEL_JOBHISTORY_H 00005 00006 #include "GaudiKernel/HistoryObj.h" 00007 00008 #include <string> 00009 #include <vector> 00010 #include <utility> 00011 #include <iosfwd> 00012 #include <ctime> 00013 00022 class Property; 00023 00024 class JobHistory: public HistoryObj { 00025 00026 public: 00027 00028 typedef std::vector< std::pair<std::string,const Property*> > PropertyList; 00029 00030 private: // data 00031 00032 std::string m_release_version; 00033 std::string m_dir; 00034 std::string m_cmtconfig; 00035 00036 std::string m_osname; 00037 std::string m_hostname; 00038 std::string m_os_version; 00039 std::string m_machine; 00040 00041 std::vector<std::string> m_environ; 00042 00043 PropertyList m_props; 00044 00045 std::vector<std::string> m_CVSid; 00046 time_t m_start_time; 00047 00048 public: // functions 00049 00050 // Constructor. 00051 JobHistory(); 00052 JobHistory(const std::string& rel, const std::string& os, 00053 const std::string& host, const std::string& dir, 00054 const std::string& osver, const std::string& mach, 00055 const std::string& cmtconfig, 00056 const time_t& time); 00057 00058 // Destructor. 00059 ~JobHistory(); 00060 00061 // Class IDs 00062 virtual const CLID& clID() const { return classID(); } 00063 static const CLID& classID(); 00064 00065 // add a global property 00066 void addProperty( const std::string&, const Property* ); 00067 00068 // Return the job history data. 00069 std::string release_version() const { return m_release_version; } 00070 std::string os() const { return m_osname; } 00071 std::string hostname() const { return m_hostname; } 00072 std::string os_version() const { return m_os_version; } 00073 std::string machine() const { return m_machine; } 00074 std::string dir() const { return m_dir; } 00075 std::string cmtconfig() const { return m_cmtconfig; } 00076 std::vector<std::string> environment() const { return m_environ; } 00077 const PropertyList& properties() const { return m_props; } 00078 time_t start_time() const { return m_start_time; } 00079 00080 private: 00081 00082 }; 00083 00084 // Output stream. 00085 std::ostream& operator<<(std::ostream& lhs, const JobHistory& rhs); 00086 00087 #endif