-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTask.hpp
40 lines (36 loc) · 985 Bytes
/
Task.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
//
// Task.hpp
// FinalProject
//
// Created by Mithilan Sivanesan on 2016-11-21.
// Copyright © 2016 Mithilan Sivanesan. All rights reserved.
//
#ifndef Task_hpp
#define Task_hpp
#include <list>
#include <memory>
#include "Stimulation.h"
#include "Stims.hpp"
#include "Exoskeleton.hpp"
namespace termproject{
class Task{
std::list <std::shared_ptr<Stimulation>> stimulationList;
std::string taskName;
public:
Task(std::string);
Task(std::string, std::list <std::shared_ptr<Stimulation>>);
Task(const Task&);
Task(Task&&);
Task& operator=(const Task&);
Task&& operator=(Task&&);
void operator+=(std::shared_ptr<Stimulation>);
Stimulation& operator[](size_t i)const;
void removeStimulation(std::string name);
std::ostream& dump(std::ostream&);
std::ostream& execute(std::ostream&);
std::string getTaskName(){return taskName;};
size_t getSize(){return stimulationList.size();};
~Task();
};
}
#endif /* Task_hpp */