#ifndef EMPLOYEE_HPP #define EMPLOYEE_HPP #include #include "equipment.hpp" class Employee { private: std::vector equipmentTraining; std::vector hazardTraining; std::vector statesTraining; bool canRepair; Equipment assignedEquipment; public: Employee(); std::vector getEquipmentTraining() const; std::vector getHazardTraining() const; std::vector getStatesTraining() const; Equipment getAssignedEquipment() const; bool getCanRepair() const; void trainEquipment(int certificateNumber); void trainHazard(int certificateNumber); void trainStates(int certificateNumber); void trainRepair(); void assignEquipment(Equipment &newEquipment); void removeEquipment(); bool canAssignEquipment(Equipment toBeAssigned) const; bool canEmployeeMoveGoodState(Good &goodToMove) const; bool canEmployeeMoveGoodHazard(Good &goodToMove) const; bool canEmployeeMoveGood(Good &goodToMove) const; bool canMoveGood(Good &goodToMove, Equipment &toWhichMove, Equipment &fromWhichMove) const; bool moveGood(Good &goodToMove, Equipment &toWhichMove, Equipment &fromWhichMove) const; void moveGoodOverride(Good &goodToMove, Equipment &toWhichMove) const; bool repairEquipment(Equipment &toRepair) const; }; #endif