00001 /* #start# *********************************************************** 00002 00003 Scheduling Simulator 00004 Lehrstuhl f"ur Effiziente Algorithmen 00005 Technische Universit"at M"unchen 00006 00007 File : $Id: SPlayerLog.h,v 1.2 2002/11/10 20:32:20 taeubig Exp $ 00008 00009 Purpose : this logger records all the events to file that are needed 00010 to re-play the scheduling procedure with the player module 00011 00012 RCS-Log: 00013 $Log: SPlayerLog.h,v $ 00014 Revision 1.2 2002/11/10 20:32:20 taeubig 00015 namespace and header include changes 00016 00017 Revision 1.1 2002/08/29 12:59:58 taeubig 00018 Added the sources 00019 00020 Revision 1.4 2000/01/17 10:17:22 zoidl 00021 little changes in javadocs 00022 00023 Revision 1.3 2000/01/11 12:55:12 zoidl 00024 added javadoc comments 00025 00026 Revision 1.2 2000/01/05 22:50:38 zoidl 00027 registeres only at machines and can be used as slave logger now 00028 00029 Revision 1.1 1999/12/08 23:01:40 zoidl 00030 player event logging moved from SLogger to SPlayerLog 00031 00032 00033 * #end# ************************************************************* */ 00034 00035 #ifndef SPLAYERLOG_H 00036 #define SPLAYERLOG_H 00037 00038 // system header files 00039 #include <iostream> 00040 00041 // project header files 00042 #include "SLogger.h" 00043 00057 class SPlayerLog : public virtual SLogger 00058 { 00059 public: 00066 SPlayerLog(STaskSystem& ts, std::ostream& out = std::cout, 00067 bool registerAsObserver = true); 00068 00071 virtual ~SPlayerLog(); 00072 00077 virtual void feedEvent(const SEvent& event); 00078 00083 void setLogStream(std::ostream& out); 00084 00085 private: 00086 STaskSystem& _rTaskSys; 00087 // the stream where output is sent to 00088 std::ostream* _pLogStream; 00089 // did we register as observer 00090 bool _regAsObs; 00091 }; 00092 00093 #endif