Gaudi Framework, version v23r2p1

Home   Generated: Fri Jun 29 2012

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 #include "GaudiKernel/IVersHistoryObj.h"
00008 
00009 #include <string>
00010 #include <vector>
00011 #include <utility>
00012 #include <iosfwd>
00013 #include <ctime>
00014 
00023 class Property;
00024 
00025 class GAUDI_API JobHistory: public HistoryObj, virtual public IVersHistoryObj {
00026 
00027 public:
00028 
00029   typedef std::vector< std::pair<std::string,const Property*> > PropertyPairList;
00030 
00031 private:  // data
00032 
00033   std::string m_release_version;
00034   std::string m_dir;
00035   std::string m_cmtconfig;
00036 
00037   std::string m_osname;
00038   std::string m_hostname;
00039   std::string m_os_version;
00040   std::string m_machine;
00041 
00042   std::vector<std::string> m_environ;
00043 
00044   PropertyList m_props;
00045   PropertyPairList m_ppl;
00046 
00047   std::vector<std::string> m_CVSid;
00048   time_t m_start_time;
00049 
00050 public:  // functions
00051 
00052   // Constructor.
00053   JobHistory();
00054   JobHistory(const std::string& rel, const std::string& os,
00055              const std::string& host, const std::string& dir,
00056              const std::string& osver, const std::string& mach,
00057              const std::string& cmtconfig,
00058              const time_t& time);
00059 
00060   // Destructor.
00061   ~JobHistory();
00062 
00063   // Class IDs
00064   virtual const CLID& clID() const { return classID(); }
00065   static const CLID& classID();
00066 
00067   // add a global property
00068   void addProperty( const std::string&, const Property* );
00069 
00070   // Return the job history data.
00071   std::string release_version() const { return m_release_version; }
00072   std::string os() const { return m_osname; }
00073   std::string hostname() const { return m_hostname; }
00074   std::string os_version() const { return m_os_version; }
00075   std::string machine() const { return m_machine; }
00076   std::string dir() const { return m_dir; }
00077   std::string cmtconfig() const { return m_cmtconfig; }
00078   std::vector<std::string> environment() const { return m_environ; }
00079   const PropertyList& properties() const { return m_props; }
00080   const PropertyPairList& propertyPairs() const { return m_ppl; }
00081   time_t start_time() const { return m_start_time; }
00082 
00083   void dump(std::ostream &, const bool isXML=false, int indent=0) const;
00084 
00085   const std::string& name() const { return m_machine; }
00086   const std::string& version() const { return m_release_version;}
00087   const std::string& type() const { return m_osname; }
00088 
00089 private:
00090 
00091 };
00092 
00093 // Output stream.
00094 GAUDI_API std::ostream& operator<<(std::ostream& lhs, const JobHistory& rhs);
00095 
00096 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Fri Jun 29 2012 15:43:45 for Gaudi Framework, version v23r2p1 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004