diff Framework/Messages/IMessage.h @ 377:8eb4fe74000f

refactoring
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 05 Nov 2018 16:18:27 +0100
parents 6c22e0506587
children e7a494bdd956
line wrap: on
line diff
--- a/Framework/Messages/IMessage.h	Mon Nov 05 13:25:03 2018 +0100
+++ b/Framework/Messages/IMessage.h	Mon Nov 05 16:18:27 2018 +0100
@@ -29,59 +29,79 @@
 
 
   // base message that are exchanged between IObservable and IObserver
-  struct IMessage : public boost::noncopyable
+  class IMessage : public boost::noncopyable
   {
+  private:
     int messageType_;
+    
   protected:
-    IMessage(const int& messageType)
-      : messageType_(messageType)
-    {}
+    IMessage(const int& messageType) :
+      messageType_(messageType)
+    {
+    }
+    
   public:
-    virtual ~IMessage() {}
+    virtual ~IMessage()
+    {
+    }
 
-    virtual int GetType() const {return messageType_;}
+    virtual int GetType() const
+    {
+      return messageType_;
+    }
   };
 
 
   // base class to derive from to implement your own messages
   // it handles the message type for you
   template <int type>
-  struct BaseMessage : public IMessage
+  class BaseMessage : public IMessage
   {
+  public:
     enum
     {
       Type = type
     };
 
-    BaseMessage()
-      : IMessage(static_cast<int>(Type))
-    {}
+    BaseMessage() :
+      IMessage(static_cast<int>(Type))
+    {
+    }
   };
+  
 
   // simple message implementation when no payload is needed
   // sample usage:
   // typedef NoPayloadMessage<MessageType_LayerSource_GeometryReady> GeometryReadyMessage;
   template <int type>
-  struct NoPayloadMessage : public BaseMessage<type>
+  class NoPayloadMessage : public BaseMessage<type>
   {
-    NoPayloadMessage()
-      : BaseMessage<type>()
-    {}
-
+  public:
+    NoPayloadMessage() :
+      BaseMessage<type>()
+    {
+    }
   };
 
   // simple message implementation when no payload is needed but the origin is required
   // sample usage:
   // typedef OriginMessage<MessageType_SliceLoader_GeometryError, OrthancSlicesLoader> SliceGeometryErrorMessage;
   template <int type, typename TOrigin>
-  struct OriginMessage : public BaseMessage<type>
+  class OriginMessage : public BaseMessage<type>
   {
+  private:
     TOrigin& origin_;
-    OriginMessage(TOrigin& origin)
-      : BaseMessage<type>(),
-        origin_(origin)
-    {}
 
-  };
+  public:
+    OriginMessage(TOrigin& origin) :
+      BaseMessage<type>(),
+      origin_(origin)
+    {
+    }
 
+    TOrigin& GetOrigin() const
+    {
+      return origin_;
+    }
+  };
 }