00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 #ifndef SSmithWSEPT_H
00014 #define SSmithWSEPT_H
00015 
00016 
00017 #include <LEDA/p_queue.h>
00018 
00019 #ifndef leda_pq_item
00020 #define leda_pq_item pq_item
00021 #endif
00022 
00023 
00024 #include "SSchedAlgorithm.h"
00025 
00029 class SSmithWSEPT : public SSchedAlgorithm  {
00030 
00031 public:
00032   virtual ~SSmithWSEPT(){};
00033   virtual void startup();
00034   virtual double innerLoop(const leda_list<STSysSchedEvent>& rEvents);
00035   virtual bool isFinished() const;
00036   virtual const leda_string getDescription() const;
00037   virtual const leda_string &getName() const;
00038   virtual const SClassification &getClassification() const;
00039   virtual SLeaBibEntry &getLeaBibEntry() const;
00040   
00041  private:
00042   leda_string _descr;
00043   leda_p_queue<double,SJob*> _jobsOrder;
00044 
00045   
00046   int numjobs;
00047   int count;
00048   double* weightarray;
00049   double* meanarray;
00050   double* timearray;
00051   
00052   
00053 };
00054 
00055 #endif