Teacher.h 1.32 KB
Newer Older
Andrew Binder's avatar
Andrew Binder committed
1
2
3
4
5
#include <vector>
#include <string>

using namespace std;

Andrew Binder's avatar
Andrew Binder committed
6
7
class Student {
    public:
Andrew Binder's avatar
Andrew Binder committed
8
9
10
11
        Student(string userNameIn) {
            userName = userNameIn;
        }
    
Andrew Binder's avatar
Andrew Binder committed
12
13
14
15
16
17
18
        int getLevel() {
            return level;
        }
        string getUserName() {
            return userName;
        }
        
Andrew Binder's avatar
Andrew Binder committed
19
20
21
22
23
24
25
26
        void setLevel(int levelIn) {
            level = levelIn;
        }
        
        void setUserName(string userNameIn) {
            userName = userNameIn;
        }
        
Andrew Binder's avatar
Andrew Binder committed
27
28
29
30
    private:
        string userName;
        int level = 1;
};
Andrew Binder's avatar
Andrew Binder committed
31
32
33
34
35
36
37
38
39

class Teacher {
    public:
        Teacher(string userNameIn);   //  Default constructor
        
        //  Teacher Functions
        void displayMenu();
        void displayProgress();  //  Opens menu, teacher get get all (gradebook style) or a student
        bool exportProgress();  //  outputProgress() in UML
Andrew Binder's avatar
Andrew Binder committed
40
41
        bool enrollStudent(Student studentIn);
        bool adjustProgress(Student studentIn, int level);
Andrew Binder's avatar
Andrew Binder committed
42
43
44
45
46
47
48
49
50
        void endProgram();
        
        //  Accessors
        const string getUserName();
        const string getExitCode();
        
        //  Mutators
        bool setExitCode(string exitCodeIn);
        bool setUserName(string userNameIn);
Andrew Binder's avatar
Andrew Binder committed
51
52
53
54
55
56
        
    private:
        string userName;
        string exitCode;
        vector<Student> roster;
        
Andrew Binder's avatar
Andrew Binder committed
57
};