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

model/jobs/SParallelJob.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: SParallelJob.h,v 1.5 2003/03/21 15:47:05 taeubig Exp $
00008 
00009  Purpose : 
00010 
00011  RCS-Log:
00012  $Log: SParallelJob.h,v $
00013  Revision 1.5  2003/03/21 15:47:05  taeubig
00014  merge with source from Bertolt
00015 
00016  Revision 1.4  2003/01/08 18:57:13  meierb
00017  added randomized release times
00018 
00019  Revision 1.2  2002/12/16 23:32:09  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.2  2002/11/09 20:50:15  taeubig
00026  <iostream> inclusion, added std::
00027  corrected relative path for header includes
00028 
00029  Revision 1.1  2002/08/29 12:59:59  taeubig
00030  Added the sources
00031 
00032  Revision 1.1  2000/05/29 19:51:28  taeubig
00033  Moved job type related files into subdirectory jobs
00034 
00035  Revision 1.7  2000/01/30 03:06:23  taeubig
00036  Updated topologies.
00037 
00038  Revision 1.6  1999/12/01 03:59:54  taeubig
00039  SParallelJob is now superclass of SMalleableJob.
00040  Minor changes for requested topology.
00041 
00042  Revision 1.5  1999/11/03 02:55:02  taeubig
00043  Multiprocessor scheduling test implemented.
00044 
00045  Revision 1.4  1999/03/31 11:13:29  hall
00046  added a few output operators and save routines
00047 
00048  Revision 1.3  1999/02/12 11:55:46  hall
00049  impl. SEnvironment slice
00050 
00051  Revision 1.2  1999/01/29 10:03:42  schickin
00052  Project-Headers added.
00053 
00054 
00055  * #end# ************************************************************* */
00056 
00057 #ifndef SPARALLELJOB_H
00058 #define SPARALLELJOB_H
00059 
00060 // system header files
00061 #include <iostream>
00062 
00063 // project header files
00064 #include "SJob.h"
00065 #include "SParallelJobMod.h"
00066 #include "../topos/STopology.h"
00067 
00068 
00069 // -----------------------------------------------------------------------
00070 class SParallelJob : public virtual SJob {
00071   TYPEINFO0(SParallelJob, "parallel");
00072   friend class SParallelJobMod;
00073 public:
00074   SParallelJob(SProbabilityDist* dist) : SJob(dist), _mod(*this) {};
00075   SParallelJob(double proctime) : SJob(proctime), _mod(*this) {};
00076   virtual ~SParallelJob() {};
00077 
00078   virtual void process(SMachines& machines, double duration);
00079 
00080   SJobMod& getModifier() { return _mod; };
00081 
00082 private:
00083   SParallelJobMod _mod;
00084 };
00085 // -----------------------------------------------------------------------
00086 std::ostream& operator<<(std::ostream& out, SParallelJob &job);  
00087 // -----------------------------------------------------------------------
00088 
00089 #endif //SPARALLELJOB_H

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