#include <it_bus/reflect/value_ref.h>
Inheritance diagram for IT_Reflect::ValueRef< T >:
As well as Value this class implements AnySimpleType to support get_reflected calls on simple types that are not class objects.
Definition at line 23 of file value_ref.h.
Public Member Functions | |
ValueRef (const T &value) throw (()) | |
Constructor. | |
ValueRef (const T *value) throw (()) | |
Constructor. | |
~ValueRef () throw (()) | |
Destructor. | |
virtual const IT_Bus::AnyType & | get_reflected () const throw (()) |
Get the reflected object. | |
virtual IT_Bus::AnyType & | get_reflected () throw (()) |
Get the reflected object. | |
virtual const IT_Bus::QName & | get_type () const |
Returns the IT_Bus::QName for the type. | |
virtual AnyType::Kind | get_kind () const |
Returns the IT_Bus::AnyType::Kind for the type. | |
virtual IT_Reflect::Reflection * | get_reflection () throw (()) |
Return an instance of the IT_Reflect::Reflection type that encapsulates this instance. | |
virtual const IT_Reflect::Reflection * | get_reflection () const throw (()) |
Return an instance of the IT_Reflect::Reflection type that encapsulates this instance. | |
virtual void | read (const IT_Bus::QName &name, IT_Bus::ComplexTypeReader &reader) throw ((IT_Bus::DeserializationException)) |
Read the value into the instance. | |
virtual void | write (const IT_Bus::QName &name, IT_Bus::ComplexTypeWriter &writer) const throw ((IT_Bus::SerializationException)) |
Write the content of the instance. | |
virtual void | read_value (IT_Bus::AnySimpleTypeReader &reader) throw ((IT_Bus::DeserializationException)) |
Read the value into the instance. | |
virtual void | write_value (IT_Bus::AnySimpleTypeWriter &writer) const throw ((IT_Bus::SerializationException)) |
Write the instance value. | |
virtual IT_Bus::AnyType & | copy (const IT_Bus::AnyType &rhs) |
Returns a reference to an AnyType that is a copy of the AnyType parameter. | |
virtual IT_Bus::AnyType * | clone () const throw ((ReflectException)) |
Get a pointer to a clone of this value instance. |
const IT_Bus::AnyType & IT_Reflect::ValueRef< T >::get_reflected | ( | ) | const throw (()) [virtual] |
Get the reflected object.
Implements IT_Reflect::Reflection.
Definition at line 137 of file value_ref.h.
IT_Bus::AnyType & IT_Reflect::ValueRef< T >::get_reflected | ( | ) | throw (()) [virtual] |
Get the reflected object.
Implements IT_Reflect::Reflection.
Definition at line 144 of file value_ref.h.
const IT_Bus::QName & IT_Reflect::ValueRef< T >::get_type | ( | ) | const [virtual] |
Returns the IT_Bus::QName for the type.
Derived subclasses implement this method and return their QName.
Implements IT_Bus::AnyType.
Definition at line 154 of file value_ref.h.
References IT_Bus::SchemaTypeTraits< T >::type_name().
IT_Bus::AnyType::Kind IT_Reflect::ValueRef< T >::get_kind | ( | ) | const [virtual] |
Returns the IT_Bus::AnyType::Kind for the type.
Reimplemented from IT_Bus::AnySimpleType.
Definition at line 161 of file value_ref.h.
IT_Reflect::Reflection * IT_Reflect::ValueRef< T >::get_reflection | ( | ) | throw (()) [virtual] |
Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.
IT_Reflect::ReflectException |
Reimplemented from IT_Bus::AnyType.
Definition at line 169 of file value_ref.h.
References IT_Bus::RefCountedBase::_add_ref().
const IT_Reflect::Reflection * IT_Reflect::ValueRef< T >::get_reflection | ( | ) | const throw (()) [virtual] |
Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.
IT_Reflect::ReflectException |
Reimplemented from IT_Bus::AnyType.
Definition at line 177 of file value_ref.h.
References IT_Bus::RefCountedBase::_add_ref().
void IT_Reflect::ValueRef< T >::read_value | ( | IT_Bus::AnySimpleTypeReader & | reader | ) | throw ((IT_Bus::DeserializationException)) [virtual] |
Read the value into the instance.
Derived classes implement this method.
Implements IT_Bus::AnySimpleType.
Definition at line 205 of file value_ref.h.
void IT_Reflect::ValueRef< T >::write_value | ( | IT_Bus::AnySimpleTypeWriter & | writer | ) | const throw ((IT_Bus::SerializationException)) [virtual] |
Write the instance value.
Derived classes implement this method.
Implements IT_Bus::AnySimpleType.
Definition at line 214 of file value_ref.h.
IT_Bus::AnyType & IT_Reflect::ValueRef< T >::copy | ( | const IT_Bus::AnyType & | rhs | ) | [virtual] |
Returns a reference to an AnyType that is a copy of the AnyType parameter.
Derived classes override this method, providing an appropriate implementation. In this base class, this method is not supported; an exception is always thrown.
AnyType | to be copied. |
IT_Bus::Exception | with message "Copy not supported" |
Reimplemented from IT_Bus::AnyType.
Definition at line 223 of file value_ref.h.
References IT_Reflect::ValueRefBase< T >::m_value.
IT_Bus::AnyType * IT_Reflect::ValueRef< T >::clone | ( | ) | const throw ((ReflectException)) [virtual] |
Get a pointer to a clone of this value instance.
Caller must delete return value.
Implements IT_Reflect::Reflection.
Definition at line 237 of file value_ref.h.
References IT_Reflect::ValueRefBase< T >::m_value.