IT_Bus::BuiltInType< T, TYPE > Class Template Reference

#include <it_bus_pdk/built_in_type.h>

Inheritance diagram for IT_Bus::BuiltInType< T, TYPE >:

IT_Bus::AnyType IT_Bus::ImplementationDetails List of all members.

Detailed Description

template<class T, const QName * TYPE>
class IT_Bus::BuiltInType< T, TYPE >

BuiltInType template implementation keeps the data object in a member variable.

Note: This template can only be used for types that have a working copy constructor and assignment operator.

Definition at line 27 of file built_in_type.h.

Public Types

typedef T ValueType

Public Member Functions

 BuiltInType ()
 BuiltInType (const BuiltInType &other)
 BuiltInType (const T &other)
virtual ~BuiltInType ()
virtual Kind get_kind () const
 Returns the IT_Bus::AnyType::Kind for the type.
BuiltInTypeoperator= (const BuiltInType &other)
AnyTypecopy (const AnyType &other)
 Returns a reference to an AnyType that is a copy of the AnyType parameter.
virtual const QNameget_type () const
 Returns the IT_Bus::QName for the type.
virtual void write (const QName &name, ComplexTypeWriter &writer) const throw ((SerializationException))
 Write the content of the instance.
virtual void read (const QName &name, ComplexTypeReader &reader) throw ((DeserializationException))
 Read the value into the instance.
virtual const T & get () const
 Returns the value.
virtual T & get ()
 Returns the value.
virtual void set (const T &data)
 Set the data value.
virtual IT_Reflect::Reflectionget_reflection () throw (())
 Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.
virtual const IT_Reflect::Reflectionget_reflection () const throw (())
 Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.

Private Types

typedef BuiltInType ThisType

Private Attributes

m_data


Member Function Documentation

template<class T, const QName * TYPE>
AnyType::Kind IT_Bus::BuiltInType< T, TYPE >::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 158 of file built_in_type.h.

template<class T, const QName * TYPE>
AnyType & IT_Bus::BuiltInType< T, TYPE >::copy ( const AnyType other  )  [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.

Parameters:
AnyType to be copied.
Returns:
A reference to AnyType.
Exceptions:
IT_Bus::Exception with message "Copy not supported"

Reimplemented from IT_Bus::AnyType.

Definition at line 147 of file built_in_type.h.

template<class T, const QName * TYPE>
const QName & IT_Bus::BuiltInType< T, TYPE >::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 165 of file built_in_type.h.

template<class T, const QName * TYPE>
void IT_Bus::BuiltInType< T, TYPE >::write ( const QName name,
ComplexTypeWriter writer 
) const throw ((SerializationException)) [virtual]

Write the content of the instance.

Derived subclasses implement this method.

Implements IT_Bus::AnyType.

Definition at line 172 of file built_in_type.h.

template<class T, const QName * TYPE>
void IT_Bus::BuiltInType< T, TYPE >::read ( const QName name,
ComplexTypeReader reader 
) throw ((DeserializationException)) [virtual]

Read the value into the instance.

Derived subclasses implement this method.

Implements IT_Bus::AnyType.

Definition at line 182 of file built_in_type.h.

template<class T, const QName * TYPE>
const T & IT_Bus::BuiltInType< T, TYPE >::get (  )  const [virtual]

Returns the value.

Exceptions:
NoDataException if called when is_nil() is true.

Definition at line 199 of file built_in_type.h.

References IT_Bus::BuiltInType< T, TYPE >::m_data.

Referenced by IT_Bus::BuiltInType< T, TYPE >::operator=().

template<class T, const QName * TYPE>
T & IT_Bus::BuiltInType< T, TYPE >::get (  )  [virtual]

Returns the value.

Exceptions:
NoDataException if called when is_nil() is true.

Definition at line 192 of file built_in_type.h.

References IT_Bus::BuiltInType< T, TYPE >::m_data.

template<class T, const QName * TYPE>
IT_Reflect::Reflection * IT_Bus::BuiltInType< T, TYPE >::get_reflection (  )  throw (()) [virtual]

Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.

Returns:
IT_Reflect::Reflection
Exceptions:
IT_Reflect::ReflectException 

Reimplemented from IT_Bus::AnyType.

Definition at line 215 of file built_in_type.h.

References IT_Bus::BuiltInType< T, TYPE >::m_data.

template<class T, const QName * TYPE>
const IT_Reflect::Reflection * IT_Bus::BuiltInType< T, TYPE >::get_reflection (  )  const throw (()) [virtual]

Return an instance of the IT_Reflect::Reflection type that encapsulates this instance.

Returns:
IT_Reflect::Reflection
Exceptions:
IT_Reflect::ReflectException 

Reimplemented from IT_Bus::AnyType.

Definition at line 223 of file built_in_type.h.

References IT_Bus::BuiltInType< T, TYPE >::m_data.


Generated on Tue Mar 20 15:28:12 2007 for Artix by  doxygen 1.5.1-p1