job.h

来自「data structures, algorithms and Applicat」· C头文件 代码 · 共 39 行

H
39
字号
// task and job classes for machine scheduling
#ifndef Job_
#define Job_

class Task {
   friend class Job;
   friend bool MoveToNextMachine(Job*);
   private:
      long time;
      int  machine;
};

class Job {
   friend bool MoveToNextMachine(Job*);
   friend Job* ChangeState(int);
   friend void Simulate();
   friend class Machine;
   public:
      Job(long id) {ID = id;
               Length = ArriveTime = 0;}
      void AddTask(int p, long t) {
              Task x;
              x.machine = p;
              x.time = t;
              TaskQ.Add(x);}
      long DeleteTask() {// delete next task
              Task x;
              TaskQ.Delete(x);
              Length += x.time;
              return x.time;}
   private:
      LinkedQueue<Task> TaskQ;
      long Length;      // sum of scheduled task times
      long ArriveTime;  // arrival time at current queue
      long ID;          // job identifier
};

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?