PureMVC PureMVC

include/PureMVC/Interfaces/INotification.hpp

Go to the documentation of this file.
00001 //  INotification.hpp
00002 //  PureMVC_C++
00003 //
00004 //  PureMVC Port to C++ by Tang Khai Phuong <phuong.tang@puremvc.org>
00005 //  PureMVC - Copyright(c) 2006-2011 Futurescale, Inc., Some rights reserved.
00006 //  Your reuse is governed by the Creative Commons Attribution 3.0 License
00007 //
00008 
00009 #if !defined(__PUREMVC_INTERFACES_INOTIFICATION_HPP__)
00010 #define __PUREMVC_INTERFACES_INOTIFICATION_HPP__
00011 
00012 // STL include
00013 #include <string>
00014 // PureMVC include
00015 #if !defined(__PUREMVC_HPP__)
00016 #define __PUREMVC_INCLUDE__
00017 #include "../PureMVC.hpp"
00018 #endif /* __PUREMVC_HPP__ */
00019 
00020 namespace PureMVC
00021 {
00022     namespace Interfaces
00023     {
00060         struct PUREMVC_API INotification
00061         {
00066             virtual std::string const& getName(void) const = 0;
00067 
00071             virtual void setBody(void const* body) = 0;
00072 
00076             virtual void const* getBody(void) const = 0;
00077 
00081             virtual void setType(std::string const& type) = 0;
00082 
00086             virtual std::string const& getType(void) const = 0;
00087 
00091             virtual std::string toString(void) const = 0;
00092 
00096             virtual void toString(std::string& arg) const = 0;
00097 
00101             virtual ~INotification(void);
00102         };
00103     }
00104 }
00105 
00106 #endif /* __PUREMVC_INTERFACES_INOTIFICATION_HPP__ */