v2.0.0
Loading...
Searching...
No Matches
observerpattern.cpp
Go to the documentation of this file.
1//=============================================================================================================
21
22//=============================================================================================================
23// INCLUDES
24//=============================================================================================================
25
26#include "observerpattern.h"
27
28using namespace UTILSLIB;
29
30//=============================================================================================================
31// DEFINE MEMBER METHODS
32//=============================================================================================================
33
37
38//=============================================================================================================
39
40void Subject::attach(IObserver* pObserver)
41{
42 m_Observers.insert(pObserver);
43}
44
45//=============================================================================================================
46
47void Subject::detach(IObserver* pObserver)
48{
49 m_Observers.erase(m_Observers.find(pObserver));
50 //m_Observers.erase(observer); //C++ <set> STL implementation
51}
52
53//=============================================================================================================
54
56{
58 {
59 t_Observers::const_iterator it = m_Observers.begin();
60 for( ; it != m_Observers.end(); ++it)
61 (*it)->update(this);
62// for(auto observer : m_Observers){
63// observer->update(this);
64// }
65 }
66}
67
68//=============================================================================================================
69// STATIC DEFINITIONS
70//=============================================================================================================
71
72bool Subject::notifyEnabled = true;
Classical GoF observer pattern (Subject + IObserver) used by MNE-CPP's non-QObject model classes.
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
The IObserver interface provides the base class of every observer of the observer design pattern.
void attach(IObserver *pObserver)
void detach(IObserver *pObserver)
static bool notifyEnabled