Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members

Property.h

00001 #ifndef ERIS_PROPERTY_H
00002 #define ERIS_PROPERTY_H
00003 
00004 #include <sigc++/object.h>
00005 #include <sigc++/signal.h>
00006 
00007 namespace Atlas {
00008   namespace Message {
00009     class Element;
00010   }
00011 }
00012 
00013 namespace Eris
00014 {
00015    
00016 typedef SigC::Signal1<void, Atlas::Message::Element&> Getter;    
00017 typedef SigC::Signal1<void, const Atlas::Message::Element&> Setter;
00018 
00019 class Property : virtual public SigC::Object
00020 {
00021 public:    
00022     Getter Get; 
00023     Setter Set; 
00024 
00025     const Atlas::Message::Element& getValue()
00026     {
00027         Get.emit(_value);
00028         return _value;
00029     }
00030 
00031     void setValue(const Atlas::Message::Element& v)
00032     {
00033         _value = v;
00034         Set.emit(v);
00035     }
00036     
00037 protected:
00038     Atlas::Message::Element _value;
00039 };
00040     
00041 }
00042 
00043 #endif

Generated on Sun Sep 4 14:14:04 2005 for Eris by  doxygen 1.4.4