aboutsummaryrefslogtreecommitdiff
path: root/Observer.h
diff options
context:
space:
mode:
Diffstat (limited to 'Observer.h')
-rw-r--r--Observer.h40
1 files changed, 18 insertions, 22 deletions
diff --git a/Observer.h b/Observer.h
index 6ff8f3b..7b2db7e 100644
--- a/Observer.h
+++ b/Observer.h
@@ -1,32 +1,28 @@
#pragma once
#include <vector>
-
class Observer {
- private:
+private:
+
+public:
+ virtual void update();
- public:
- virtual void update();
-
};
class Subject {
- private:
- std::vector<Observer*> observers;
- public:
- // virtual void attach(Observer* obs) { observers.push_back(obs);}
- virtual void attach(Observer* obs);
- virtual void detach(Observer*);
- virtual int size() { return this->observers.size(); }
-
- // TODO possibly add foo input as update value?
- virtual void notify();
- // virtual void notify() {
- // for (int i = 0; i < observers.size(); i++)
- // observers.at(i)->update();
- // }
+private:
+ std::vector<Observer*> observers;
+public:
+ // virtual void attach(Observer* obs) { observers.push_back(obs);}
+ virtual void attach(Observer* obs);
+ virtual void detach(Observer*);
+ virtual int size() { return this->observers.size(); }
+
+ // TODO possibly add foo input as update value?
+ virtual void notify();
+ // virtual void notify() {
+ // for (int i = 0; i < observers.size(); i++)
+ // observers.at(i)->update();
+ // }
};
-
-
-