diff Framework/Messages/MessageForwarder.h @ 317:b66d13708f40 am-2

cleanup
author am@osimis.io
date Fri, 05 Oct 2018 11:57:36 +0200
parents 4a79193ffb58
children 751fb354149e b70e9be013e4
line wrap: on
line diff
--- a/Framework/Messages/MessageForwarder.h	Fri Oct 05 10:38:16 2018 +0200
+++ b/Framework/Messages/MessageForwarder.h	Fri Oct 05 11:57:36 2018 +0200
@@ -31,12 +31,13 @@
 
   class IObservable;
 
-  class IMessageForwarder : public boost::noncopyable
+  class IMessageForwarder : public IObserver
   {
     IObservable& emitter_;
   public:
-    IMessageForwarder(IObservable& emitter)
-      : emitter_(emitter)
+    IMessageForwarder(MessageBroker& broker, IObservable& emitter)
+      : IObserver(broker),
+        emitter_(emitter)
     {}
     virtual ~IMessageForwarder() {}
 
@@ -64,14 +65,13 @@
    * B.RegisterObserverCallback(new Callable<C, A:MessageTyper>(*this, &B::MyCallback))   // where this is C
    */
   template<typename TMessage>
-  class MessageForwarder : public IMessageForwarder, public IObserver, public Callable<MessageForwarder<TMessage>, TMessage>
+  class MessageForwarder : public IMessageForwarder, public Callable<MessageForwarder<TMessage>, TMessage>
   {
   public:
     MessageForwarder(MessageBroker& broker,
                      IObservable& emitter // the object that will emit the messages to forward
                      )
-      : IMessageForwarder(emitter),
-        IObserver(broker),
+      : IMessageForwarder(broker, emitter),
         Callable<MessageForwarder<TMessage>, TMessage>(*this, &MessageForwarder::ForwardMessage)
     {
       RegisterForwarderInEmitter();