Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
variant_topic_tools::ArrayVariant::ValueImplT< T > Class Template Reference

Array variant value (templated implementation) More...

#include <ArrayVariant.h>

Inheritance diagram for variant_topic_tools::ArrayVariant::ValueImplT< T >:
Inheritance graph
[legend]

Public Types

typedef type_traits::ArrayType< T >::MemberType MemberType
 Definition of the member type. More...
 
typedef type_traits::ArrayType< T >::ValueType ValueType
 Definition of the value type. More...
 

Public Member Functions

void addMember (const Variant &member)
 Add a member to the array (implementation) More...
 
 BOOST_STATIC_ASSERT (type_traits::IsArray< T >::value)
 
void clear ()
 Clear the array (implementation) More...
 
ValuePtr clone () const
 Clone this variant value (implementation) More...
 
Serializer createSerializer (const DataType &type) const
 Create a serializer for this variant (implementation) More...
 
Variant getMember (int index) const
 Retrieve a member of the variant collection by index (implementation) More...
 
size_t getNumMembers () const
 Retrieve the number of members of the variant collection (implementation) More...
 
ValueTypegetValue ()
 Retrieve the variant's value (implementation of the non-const version) More...
 
const ValueTypegetValue () const
 Retrieve the variant's value (implementation of the const version) More...
 
void resize (size_t numMembers)
 Resize the array (implementation) More...
 
void set (const Pointer< ValueType > &value)
 Set the variant's value pointer (implementation) More...
 
void setMember (int index, const Variant &member)
 Set a member of the variant collection by index (implementation) More...
 
 ValueImplT (const DataType &memberType=DataType(), const Pointer< ValueType > &array=Pointer< ValueType >())
 Default constructor. More...
 
 ValueImplT (const ValueImplT< T > &src)
 Copy constructor. More...
 
virtual ~ValueImplT ()
 Destructor. More...
 
- Public Member Functions inherited from variant_topic_tools::Variant::ValueT< type_traits::ArrayType< T >::ValueType >
const std::type_info & getTypeInfo () const
 Retrieve the variant's value type information (re-implementation) More...
 
virtual void set (const Pointer< type_traits::ArrayType< T >::ValueType > &value)=0
 Set the variant's value pointer (abstract declaration) More...
 
void setValue (const type_traits::ArrayType< T >::ValueType &value)
 Set the variant's value (overloaded version taking a variant value) More...
 
 ValueT ()
 Default constructor. More...
 
virtual ~ValueT ()
 Destructor. More...
 
- Public Member Functions inherited from variant_topic_tools::Variant::Value
 Value ()
 Default constructor. More...
 
- Public Member Functions inherited from variant_topic_tools::ArrayVariant::Value
Variant getMember (const std::string &name) const
 Retrieve a member of the variant collection by name (implementation) More...
 
bool hasMember (const std::string &name) const
 True, if the variant collection contains the member with the specified name (implementation) More...
 
void setMember (const std::string &name, const Variant &member)
 Set a member of the variant collection by name (implementation) More...
 
void setValue (const Variant::Value &value)
 Set the variant's value (implementation) More...
 
 Value ()
 Default constructor. More...
 
void writeMember (std::ostream &stream, int index) const
 Write the variant collection member with the specified index to a stream (implementation) More...
 
virtual ~Value ()
 Destructor. More...
 
- Public Member Functions inherited from variant_topic_tools::CollectionVariant::Value
Variant getMember (const std::string &name, size_t pos) const
 Recursively retrieve a member of the collection by name. More...
 
bool hasMember (const std::string &name, size_t pos) const
 True, if the collection or any of its members contains the member with the specified name. More...
 
bool isEqual (const Variant::Value &value) const
 True, if this variant value equals another variant value (implementation) More...
 
void read (std::istream &stream)
 Read the variant from a stream (implementation) More...
 
void setMember (const std::string &name, const Variant &member, size_t pos)
 Recursively set a member of the collection by name. More...
 
 Value ()
 Default constructor. More...
 
void write (std::ostream &stream) const
 Write this variant value to a stream (implementation) More...
 

Public Attributes

Pointer< ValueTypearray
 The strong-typed array. More...
 
DataType memberType
 The array member type. More...
 

Static Public Attributes

static const size_t NumMembers = type_traits::ArrayType<T>::NumMembers
 Definition of the number of array members. More...
 

Detailed Description

template<typename T>
class variant_topic_tools::ArrayVariant::ValueImplT< T >

Array variant value (templated implementation)

Definition at line 206 of file ArrayVariant.h.

Member Typedef Documentation

Definition of the member type.

Definition at line 218 of file ArrayVariant.h.

Definition of the value type.

Definition at line 214 of file ArrayVariant.h.

Constructor & Destructor Documentation

template<typename T>
variant_topic_tools::ArrayVariant::ValueImplT< T >::ValueImplT ( const DataType memberType = DataType(),
const Pointer< ValueType > &  array = PointerValueType >() 
)

Default constructor.

template<typename T>
variant_topic_tools::ArrayVariant::ValueImplT< T >::ValueImplT ( const ValueImplT< T > &  src)

Copy constructor.

template<typename T>
virtual variant_topic_tools::ArrayVariant::ValueImplT< T >::~ValueImplT ( )
virtual

Destructor.

Member Function Documentation

template<typename T>
void variant_topic_tools::ArrayVariant::ValueImplT< T >::addMember ( const Variant member)
virtual

Add a member to the array (implementation)

Implements variant_topic_tools::ArrayVariant::Value.

template<typename T>
variant_topic_tools::ArrayVariant::ValueImplT< T >::BOOST_STATIC_ASSERT ( type_traits::IsArray< T >::value  )
template<typename T>
void variant_topic_tools::ArrayVariant::ValueImplT< T >::clear ( )
virtual

Clear the array (implementation)

Implements variant_topic_tools::ArrayVariant::Value.

template<typename T>
ValuePtr variant_topic_tools::ArrayVariant::ValueImplT< T >::clone ( ) const
virtual

Clone this variant value (implementation)

Implements variant_topic_tools::Variant::Value.

template<typename T>
Serializer variant_topic_tools::ArrayVariant::ValueImplT< T >::createSerializer ( const DataType type) const
virtual

Create a serializer for this variant (implementation)

Implements variant_topic_tools::Variant::Value.

template<typename T>
Variant variant_topic_tools::ArrayVariant::ValueImplT< T >::getMember ( int  index) const
virtual

Retrieve a member of the variant collection by index (implementation)

Implements variant_topic_tools::CollectionVariant::Value.

template<typename T>
size_t variant_topic_tools::ArrayVariant::ValueImplT< T >::getNumMembers ( ) const
virtual

Retrieve the number of members of the variant collection (implementation)

Implements variant_topic_tools::CollectionVariant::Value.

template<typename T>
ValueType& variant_topic_tools::ArrayVariant::ValueImplT< T >::getValue ( )
virtual

Retrieve the variant's value (implementation of the non-const version)

Implements variant_topic_tools::Variant::ValueT< type_traits::ArrayType< T >::ValueType >.

template<typename T>
const ValueType& variant_topic_tools::ArrayVariant::ValueImplT< T >::getValue ( ) const
virtual

Retrieve the variant's value (implementation of the const version)

Implements variant_topic_tools::Variant::ValueT< type_traits::ArrayType< T >::ValueType >.

template<typename T>
void variant_topic_tools::ArrayVariant::ValueImplT< T >::resize ( size_t  numMembers)
virtual

Resize the array (implementation)

Implements variant_topic_tools::ArrayVariant::Value.

template<typename T>
void variant_topic_tools::ArrayVariant::ValueImplT< T >::set ( const Pointer< ValueType > &  value)

Set the variant's value pointer (implementation)

template<typename T>
void variant_topic_tools::ArrayVariant::ValueImplT< T >::setMember ( int  index,
const Variant member 
)
virtual

Set a member of the variant collection by index (implementation)

Implements variant_topic_tools::CollectionVariant::Value.

Member Data Documentation

template<typename T>
Pointer<ValueType> variant_topic_tools::ArrayVariant::ValueImplT< T >::array
mutable

The strong-typed array.

Definition at line 292 of file ArrayVariant.h.

template<typename T>
DataType variant_topic_tools::ArrayVariant::ValueImplT< T >::memberType

The array member type.

Definition at line 288 of file ArrayVariant.h.

template<typename T>
const size_t variant_topic_tools::ArrayVariant::ValueImplT< T >::NumMembers = type_traits::ArrayType<T>::NumMembers
static

Definition of the number of array members.

Definition at line 222 of file ArrayVariant.h.


The documentation for this class was generated from the following file:


variant_topic_tools
Author(s): Ralf Kaestner
autogenerated on Sat Jan 9 2021 03:56:50