Defines classes IObserver and IObservable (Observer pattern).
std::shared_ptr< IObserver > observer_t
Shared pointer is used when passing these objects from Python to C++.
virtual void attachObserver(observer_t obj)
attach observer to the list of observers
virtual void notifyObservers()
notify observers about change in status
std::list< observer_t > m_observers