SWADP/Opdracht_4/inc/Observer.h
Shaquille Soekhlal 7723e68186 Opdracht 4 code en design
Co-authored-by: Aryan Lala (19097727) <A.E.Lala@student.hhs.nl>
2023-06-11 16:15:15 +02:00

26 lines
584 B
C++

#ifndef __Observer_H
#define __Observer_H
#include <list>
using namespace std;
class Subject;
class Observer{
private: Subject* S;
protected: Subject* getSubject ( ) const { return S; }
public: Observer (Subject* s);
virtual ~Observer ( );
virtual void update ( ) = 0;
};
class Subject{
private: list<Observer*> L;
protected: virtual void notify ( );
public: Subject ( ) { }
virtual ~Subject ( ) { }
virtual void insert (Observer* s) { L.push_front(s); }
virtual void remove (Observer* s) { L.remove(s); }
};
#endif