comparison Framework/Messages/IObservable.cpp @ 1075:81b29bc7c3d4 broker

cont
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 17 Oct 2019 14:39:51 +0200
parents 05b2e71ed145
children 17660df24c36
comparison
equal deleted inserted replaced
1074:229ea1389845 1075:81b29bc7c3d4
92 { 92 {
93 EmitMessageInternal(NULL, message); 93 EmitMessageInternal(NULL, message);
94 } 94 }
95 95
96 96
97 void IObservable::EmitMessage(const IObserver& observer, 97 void IObservable::EmitMessage(boost::weak_ptr<IObserver>& observer,
98 const IMessage& message) 98 const IMessage& message)
99 { 99 {
100 LOG(TRACE) << "IObservable::EmitMessage observer = " 100 LOG(TRACE) << "IObservable::EmitMessage observer = "
101 << std::hex << &observer << std::dec; 101 << std::hex << &observer << std::dec;
102 EmitMessageInternal(&observer, message); 102
103 boost::shared_ptr<IObserver> lock(observer.lock());
104 if (lock)
105 {
106 EmitMessageInternal(lock.get(), message);
107 }
103 } 108 }
104 } 109 }