WoW Model Viewer
Your premiere tool for viewing, equipping and animating World of Warcraft models.
Loading...
Searching...
No Matches
Observer.h
Go to the documentation of this file.
1#pragma once
2
3#include <list>
4
5class Event;
6class Observable;
7
12{
13public:
14 Observer();
15 virtual ~Observer();
16
18 virtual void onDestroyEvent()
19 {
20 }
21
23 virtual void onEvent(Event*) = 0;
24
25private:
26 void treatEvent(Event*);
29 std::list<Observable*>::iterator findObservable(Observable*);
30 std::list<Observable*> m_observableList;
31 friend class Observable;
32};
Lightweight event object carrying a type tag and sender reference.
Definition Event.h:9
Subject in the Observer pattern; maintains a list of Observer subscribers.
Definition Observable.h:12
Listener in the Observer pattern; receives events from Observable subjects.
Definition Observer.h:12
virtual void onEvent(Event *)=0
Handle an incoming event. Must be implemented by subclasses.
void addObservable(Observable *)
Definition Observer.cpp:36
void treatEvent(Event *)
Definition Observer.cpp:19
virtual ~Observer()
Definition Observer.cpp:10
std::list< Observable * >::iterator findObservable(Observable *)
Definition Observer.cpp:50
void removeObservable(Observable *)
Definition Observer.cpp:45
virtual void onDestroyEvent()
Called when an observed subject is destroyed.
Definition Observer.h:18
std::list< Observable * > m_observableList
Definition Observer.h:30