| # Gaudi Framework, version v20r4
Generated: 8 Jan 2009

# JobHistory.h

Go to the documentation of this file.

    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