aboutsummaryrefslogtreecommitdiff
path: root/Observer.h
diff options
context:
space:
mode:
Diffstat (limited to 'Observer.h')
-rw-r--r--Observer.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/Observer.h b/Observer.h
new file mode 100644
index 0000000..e6d4f68
--- /dev/null
+++ b/Observer.h
@@ -0,0 +1,31 @@
+#pragma once
+#include <vector>
+
+
+class Observer {
+ private:
+
+ 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*);
+
+ // 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();
+ // }
+};
+
+
+
+