school/cs235/lab05/station.h

52 lines
1.2 KiB
C++

#ifndef __STATION_H__
#define __STATION_H__
#include "StationInterfaceExtra.h"
#include "queue.h"
#include "deque.h"
#include "stack.h"
#include "irdeque.h"
#include "ordeque.h"
class station : public StationInterfaceExtra {
public:
station(): current_car(-1) {};
bool addToStation(int car);
int showCurrentCar();
bool removeFromStation();
bool addToStack();
bool removeFromStack();
int showTopOfStack();
int showSizeOfStack();
bool addToQueue();
bool removeFromQueue();
int showTopOfQueue();
int showSizeOfQueue();
bool addToDequeLeft();
bool addToDequeRight();
bool removeFromDequeLeft();
bool removeFromDequeRight();
int showTopOfDequeLeft();
int showTopOfDequeRight();
int showSizeOfDeque();
bool addToIRDequeLeft();
bool removeFromIRDequeLeft();
bool removeFromIRDequeRight();
int showTopOfIRDequeLeft();
int showTopOfIRDequeRight();
int showSizeOfIRDeque();
bool addToORDequeLeft();
bool addToORDequeRight();
bool removeFromORDequeLeft();
int showTopOfORDequeLeft();
int showSizeOfORDeque();
private:
int current_car;
queue q;
deque d;
stack s;
irdeque ir;
ordeque ord;
};
#endif