it_bus/reflect/value.h

00001 #ifndef _IT_REFLECT_VALUE_REFLECTION_H_
00002 #define _IT_REFLECT_VALUE_REFLECTION_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 #include <it_bus/types.h>
00007 #include <it_bus/reflect/built_in_type.h>
00008 
00009 namespace IT_Reflect
00010 {
00014     template <class T>
00015     class Value : public IT_Reflect::BuiltInType
00016     {
00017       public:
00018         Value() throw(());
00019         
00020         virtual ~Value() throw(());
00021         
00027         virtual const T&
00028         get_value() const throw((ReflectException)) = 0;
00029         
00035         virtual T&
00036         get_value() throw((ReflectException)) = 0;
00037 
00043         virtual void
00044         set_value(
00045             const T& value
00046         ) throw((ReflectException)) = 0;
00047     };
00048     
00049 
00050     template <class T>
00051     Value<T>::Value() throw(())
00052     {
00053         // Complete.
00054     }
00055 
00056     template <class T>
00057     Value<T>::~Value() throw(())
00058     {
00059         // Complete.
00060     }
00061 }
00062 
00063 #endif  

Generated on Tue Mar 20 15:27:43 2007 for Artix by  doxygen 1.5.1-p1