Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

model/env/SOpenShop.h

Go to the documentation of this file.
00001 /* #start# ***********************************************************
00002 
00003            Scheduling Simulator
00004         Lehrstuhl f"ur Effiziente Algorithmen
00005            Technische Universit"at M"unchen
00006 
00007  File    : $Id: SOpenShop.h,v 1.6 2003/01/24 10:04:59 hall Exp $
00008 
00009  Purpose : 
00010 
00011  RCS-Log:
00012  $Log: SOpenShop.h,v $
00013  Revision 1.6  2003/01/24 10:04:59  hall
00014  brdCast stuff
00015 
00016  Revision 1.5  2003/01/08 18:57:13  meierb
00017  added randomized release times
00018 
00019  Revision 1.2  2002/12/12 19:08:56  meierb
00020  *** empty log message ***
00021 
00022  Revision 1.1.1.1  2002/12/02 22:26:19  meierb
00023  my_schedule
00024 
00025  Revision 1.3  2002/11/10 18:05:42  taeubig
00026  namespace and header include changes
00027 
00028  Revision 1.2  2002/11/07 12:33:25  taeubig
00029  Added class keyword to friend declaration
00030 
00031  Revision 1.1  2002/08/29 12:59:59  taeubig
00032  Added the sources
00033 
00034  Revision 1.1  2000/05/29 19:44:34  taeubig
00035  Moved environment related files into subdirectory env
00036 
00037  Revision 1.10  2000/05/24 12:46:13  taeubig
00038  New compiler (gcc-2.95) and new Qt (2.1)
00039  Replaced "list" by "leda_list" etc.
00040 
00041  Revision 1.9  2000/01/13 16:44:08  zoidl
00042  added javadoc comments
00043 
00044  Revision 1.8  1999/12/01 14:28:23  zoidl
00045  corrected declaration of getModifer()
00046 
00047  Revision 1.7  1999/11/24 17:51:45  zoidl
00048  open shop example works
00049 
00050  Revision 1.6  1999/11/18 19:00:39  zoidl
00051  test frame for shops, modifier for SOpenShop (no load() yet!)
00052 
00053  Revision 1.5  1999/11/17 14:57:38  schickin
00054  frame for shop models added
00055 
00056  Revision 1.4  1999/02/12 11:55:45  hall
00057  impl. SEnvironment slice
00058 
00059  Revision 1.3  1999/02/10 15:05:45  schickin
00060  model-directory can be compiled now
00061 
00062  Revision 1.2  1999/01/29 10:03:42  schickin
00063  Project-Headers added.
00064 
00065 
00066  * #end# ************************************************************* */
00067 
00068 #ifndef SOPENSHOP_H
00069 #define SOPENSHOP_H
00070 
00071 // system header files
00072 #include <LEDA/array2.h>
00073 
00074 // project header files
00075 #include "SGeneralShop.h"
00076 #include "SOpenShopMod.h"
00077 #include "../jobs/SJob.h"
00078 #include "../jobs/SShopJob.h"
00079 
00087 class SOpenShop : public virtual SGeneralShop {
00088   TYPEINFO1(SOpenShop, "O", SGeneralShop);
00089   friend class SOpenShopMod;
00090 
00091 public:
00094   SOpenShop();
00095 
00096   // inherited by SEnvironment (via SGeneralShop)
00097 
00100   virtual SEnvironmentMod& getModifier()
00101     { return _mod; };
00102   
00110   virtual double getRemProcTimeOn(SJob& job,
00111           const SMachines& machines) const;
00112 
00115   virtual int getNumOfMachines() const 
00116     { return _numMach; };
00117 
00118   // inherited by SGeneralShop
00119   
00125   virtual leda_list<int> getAvailOperations(const SShopJob& job) const;
00126 
00133   virtual double getPartialProcTime(const SShopJob& job, int op,
00134             const SMachines& mach) const;
00135 
00138   virtual int getNumOperations(const SShopJob& job) const;
00139 
00147   virtual leda_list<int> getMachinesFor(const SShopJob& job, int op) const;
00148 
00151   virtual int getNextOperation(const SShopJob& job) const;
00152 
00153 private:
00154   SOpenShopMod _mod;
00155 
00159   leda_array2<double> _partTimes;
00161   int _numMach;
00162 };
00163 
00164 #endif //SOPENSHOP_H

Generated on Thu May 22 16:48:08 2003 for Sketch-it! by doxygen1.2.18