diff options
Diffstat (limited to 'Observer.h')
-rw-r--r-- | Observer.h | 31 |
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(); + // } +}; + + + + |