-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEra.hpp
55 lines (44 loc) · 1.23 KB
/
Era.hpp
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/***********************************************************
**CLASS: ERA
**
**DESCRIPTION: HPP FILE
**
**The base/parent (abstract) class. Contains data members
**and functions, including 4 virtual functions.
***********************************************************/
#ifndef ERA_hpp
#define ERA_hpp
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
class Era
{
protected:
string year;
Era * forward;
Era * backward;
Era * itself;
Era * secretPassage;
public:
Era(); //Constructor
Era(string, Era *&, Era *&, Era *&, Era *&); //Constructor with parameters
virtual ~Era() = 0; //Destructor
void setDoors(Era *&, Era *&, Era *&, Era *&);
Era * getForward();
Era * getBackward();
Era * getItself();
Era * getSecret();
string getYear();
void setForward(Era *);
void setBackward(Era *);
void setItself(Era *);
void setSecret(Era *);
void setYear(string);
//PURE VIRTUAL FUNCTIONS
virtual void message() = 0;
virtual bool lyric() = 0;
virtual string collect() = 0;
virtual void song() = 0;
};
#endif