biquadris / observer.h
observer.h
Raw
/*
    Observer class module
    
	the Observer abstract class for observer design pattern
*/

#ifndef _OBSERVER_H_
#define _OBSERVER_H_

#include <vector>
#include "subscriptions.h"

class Subject;

class Observer {
	public:
		virtual std::vector<SubscriptionType> subType() = 0;
		virtual void notify(Subject *whoNotified, SubscriptionType t) = 0;
		virtual ~Observer();
};

#endif