-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathWorkstation.h
More file actions
37 lines (32 loc) · 1.12 KB
/
Workstation.h
File metadata and controls
37 lines (32 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// Name: Phu Thong Pham
// Seneca Student ID: 106455199
// Seneca email: ptpham4@myseneca.ca
// Date of completion: Nov 28, 2020
//
// I confirm that I am the only author of this file
// and the content was created entirely by me.
#ifndef SDDS_WORKSTATION_H
#define SDDS_WORKSTATION_H
#include <iostream>
#include <string>
#include <deque>
#include "Station.h"
#include "CustomerOrder.h"
class Workstation : public Station {
std::deque<CustomerOrder> m_orders;
Workstation* m_pNextStation;
public:
explicit Workstation(const std::string& workstationInit);
Workstation(const Workstation& workstation) = delete;
Workstation& operator=(const Workstation& workstation) = delete;
Workstation(Workstation&& workstation) = delete;
Workstation& operator=(Workstation&& workstation) = delete;
void runProcess(std::ostream& out);
bool moveOrder();
void setNextStation(Station& station);
const Workstation* getNextStation() const;
bool getIfCompleted(CustomerOrder& order);
void display(std::ostream& out) const;
Workstation& operator+=(CustomerOrder&& order);
};
#endif // SDDS_WORKSTATION_H