IT_Reflect::ValueRef< T > Class Template Reference

#include <it_bus/reflect/value_ref.h>

Inheritance diagram for IT_Reflect::ValueRef< T >:

IT_Reflect::ValueRefBase< T > IT_Bus::AnySimpleType IT_Reflect::Value< T > IT_Bus::AnyType IT_Reflect::BuiltInType IT_Bus::ImplementationDetails IT_Reflect::SimpleType IT_Reflect::Reflection IT_Bus::RefCountedBase List of all members.

Detailed Description

template<class T>
class IT_Reflect::ValueRef< T >

Template implementation of IT_Reflect::Value that holds a reference to a simple type such as Float, Int, Date etc.

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) IT_THROW_DECL(())
 Constructor.
 ValueRef (const T *value) IT_THROW_DECL(())
 Constructor.
 ~ValueRef () IT_THROW_DECL(())
 Destructor.
virtual const IT_Bus::AnyTypeget_reflected () const IT_THROW_DECL(())
 Get the reflected object.
virtual IT_Bus::AnyTypeget_reflected () IT_THROW_DECL(())
 Get the reflected object.
virtual const IT_Bus::QNameget_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::Reflectionget_reflection () IT_THROW_DECL(())
virtual const IT_Reflect::Reflectionget_reflection () const IT_THROW_DECL(())
virtual IT_Bus::AnyTypeclone () const IT_THROW_DECL((ReflectException))
 Get a pointer to a clone of this value instance.


Member Function Documentation

template<class T>
IT_Bus::AnyType * IT_Reflect::ValueRef< T >::clone (  )  const [virtual]

Get a pointer to a clone of this value instance.

Caller must delete return value.

Returns:
a pointer to an AnyType

Implements IT_Reflect::Reflection.

Definition at line 237 of file value_ref.h.

References IT_Reflect::ValueRefBase< T >::m_value.

template<class T>
IT_Bus::AnyType::Kind IT_Reflect::ValueRef< T >::get_kind (  )  const [virtual]

Returns the IT_Bus::AnyType::Kind for the type.

Derived subclasses override this method and return the appropriate Kind.

Returns:
AnyType::NONE.

Reimplemented from IT_Bus::AnyType.

Definition at line 161 of file value_ref.h.

template<class T>
IT_Bus::AnyType & IT_Reflect::ValueRef< T >::get_reflected (  )  [virtual]

Get the reflected object.

Returns:
reference to AnyType containing the reflected object

Implements IT_Reflect::Reflection.

Definition at line 144 of file value_ref.h.

template<class T>
const IT_Bus::AnyType & IT_Reflect::ValueRef< T >::get_reflected (  )  const [virtual]

Get the reflected object.

Returns:
reference to AnyType containing the reflected object

Implements IT_Reflect::Reflection.

Definition at line 137 of file value_ref.h.

template<class T>
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.

Returns:
IT_Bus::QName.

Implements IT_Bus::AnyType.

Definition at line 154 of file value_ref.h.

References IT_Bus::SchemaTypeTraits< T >::type_name().


Generated on Thu Sep 7 11:41:07 2006 for Artix by  doxygen 1.4.7