00001 /* #start# *********************************************************** 00002 00003 Scheduling Simulator 00004 Lehrstuhl f"ur Effiziente Algorithmen 00005 Technische Universit"at M"unchen 00006 00007 File : $Id: SRRR.h,v 1.3 2003/01/08 18:57:11 meierb Exp $ 00008 00009 Purpose : Online Scheduling with Restricted Runtime Ratio 00010 00011 RCS-Log: 00012 $Log: SRRR.h,v $ 00013 Revision 1.3 2003/01/08 18:57:11 meierb 00014 added randomized release times 00015 00016 Revision 1.1.1.1 2002/12/02 22:26:19 meierb 00017 my_schedule 00018 00019 Revision 1.1 2002/08/29 12:59:58 taeubig 00020 Added the sources 00021 00022 Revision 1.3 2000/07/05 21:51:45 mayerh 00023 added method getLeaBibEntry and made some changes 00024 00025 Revision 1.2 2000/05/24 12:21:10 taeubig 00026 New compiler (gcc-2.95) and new Qt (2.1) 00027 Replaced "list" by "leda_list" etc. 00028 00029 Revision 1.1 2000/04/18 00:02:54 taeubig 00030 Added files for Multiprocessor Task Scheduling with 00031 Restricted Runtime Ratio (with and without knowledge about t_min) 00032 00033 00034 * #end# ************************************************************* */ 00035 00036 #ifndef SRRR_H 00037 #define SRRR_H 00038 00039 // system header files 00040 00041 // project header files 00042 #include "SSchedAlgorithm.h" 00043 00044 class SRRR : public SSchedAlgorithm { 00045 public: 00046 00047 virtual ~SRRR() {}; 00048 virtual void startup(); 00049 virtual double innerLoop(const leda_list<STSysSchedEvent>& rEvents); 00050 virtual const leda_string getDescription() const; 00051 virtual const leda_string &getName() const; 00052 virtual const SClassification &getClassification() const; 00053 virtual SLeaBibEntry &getLeaBibEntry() const; 00054 00055 protected: 00056 00057 leda_set<SJob*> smallJobs, bigJobs, delayPhaseSmallJobs; 00058 int part; 00059 double delayPhaseStart; 00060 00061 }; 00062 00063 #endif //SRRR_H