Mercurial > hg > orthanc-stone
comparison Framework/Messages/IObservable.h @ 258:e5a9b3d03478 am-2
first very basic version of SmartLoader
author | am@osimis.io |
---|---|
date | Tue, 10 Jul 2018 14:48:13 +0200 |
parents | 5e642859267e |
children | c9cf95b49a86 |
comparison
equal
deleted
inserted
replaced
257:9afafb192180 | 258:e5a9b3d03478 |
---|---|
26 | 26 |
27 namespace OrthancStone { | 27 namespace OrthancStone { |
28 | 28 |
29 class IObservable : public boost::noncopyable | 29 class IObservable : public boost::noncopyable |
30 { | 30 { |
31 protected: | |
31 MessageBroker& broker_; | 32 MessageBroker& broker_; |
32 | 33 |
33 std::set<IObserver*> observers_; | 34 std::set<IObserver*> observers_; |
34 | 35 |
35 public: | 36 public: |
40 } | 41 } |
41 virtual ~IObservable() | 42 virtual ~IObservable() |
42 { | 43 { |
43 } | 44 } |
44 | 45 |
45 void Emit(const IMessage& message) | 46 void EmitMessage(const IMessage& message) |
46 { | 47 { |
47 broker_.Emit(*this, observers_, message); | 48 broker_.EmitMessage(*this, observers_, message); |
48 } | 49 } |
49 | 50 |
50 void RegisterObserver(IObserver& observer) | 51 void RegisterObserver(IObserver& observer) |
51 { | 52 { |
52 observers_.insert(&observer); | 53 observers_.insert(&observer); |