MineLink
 All Data Structures Functions Variables Pages
fractional_scheduler.h
1 #ifndef __FRACTIONALSCHEDULER_H__
2 #define __FRACTIONALSCHEDULER_H__
3 
4 #include "../../../problems/scheduling/instance.h"
5 #include "fractional_schedule.h"
6 
7 namespace delphos{
15 private:
16  SchedulingInstance* _si;
17 
18 
19 protected:
20  FractionalSchedule* _fschedule;
21  virtual bool SetFractionalSchedule();
22  bool _2period_model;
23  int _lp_method;
24  bool _optimized;
25 
26 public:
27 
34 
38  virtual ~FractionalScheduler();
39 
44 
50  virtual bool Run();
51 
56 
60  virtual const bool Optimized();
61 
67  virtual void SetLogFile(const string& name);
68 
73  virtual void ComputeExpectedTime(const string column);
74 
75  #ifndef DOXYGEN
76  void Use2PeriodModel();
77  #endif
78 
83  void SetLPMethod(const int& lpcode);
84 
90  virtual const double GetDual(const string & cname);
91 
92 };
93 }
94 #endif
95 
virtual void ComputeExpectedTime(const string column)
Compute the expected schedule time for each block. This implementation is a dummy version that do not...
Definition: fractional_scheduler.cpp:30
Defines a scheduling instance to be solved.
Definition: instance.h:41
virtual const delphos::FractionalSchedule & GetFractionalSchedule()
Returns a fractional schedule.
Definition: fractional_scheduler.cpp:32
FractionalScheduler(delphos::SchedulingInstance &si)
Creates a new scheduler.
Definition: fractional_scheduler.cpp:4
virtual bool Run()
Solves the scheduling instance. Returns true on success.
Definition: fractional_scheduler.cpp:20
Defines a fractional scheduling of blocks.
Definition: fractional_schedule.h:22
virtual const bool Optimized()
Returns true only if the scheduler has run succesfully.
Definition: fractional_scheduler.cpp:24
virtual void SetLogFile(const string &name)
Set the use of the log with given file name.
Definition: fractional_scheduler.cpp:28
delphos::SchedulingInstance & GetInstance()
Returns the associated scheduling instance.
Definition: fractional_scheduler.cpp:16
virtual ~FractionalScheduler()
The destructor.
Definition: fractional_scheduler.cpp:10
A base class for object associated to a given block model.
Definition: blockmodel.h:1356
virtual const double GetDual(const string &cname)
Return the dual value of given constraint.
Definition: fractional_scheduler.cpp:51
void SetLPMethod(const int &lpcode)
Set LP method.
Definition: fractional_scheduler.cpp:46
Dummy class that define required methods for a solver of a scheduling instance.
Definition: fractional_scheduler.h:14