Classes | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Friends
variant_topic_tools::ArrayDataType Class Reference

Array data type. More...

#include <ArrayDataType.h>

Inheritance diagram for variant_topic_tools::ArrayDataType:
Inheritance graph
[legend]

List of all members.

Classes

class  Impl
 Array data type implementation. More...
class  ImplT
 Array data type implementation (templated strong-typed version) More...
class  ImplV
 Array data type implementation (variant-typed version) More...

Public Member Functions

 ArrayDataType ()
 Default constructor.
 ArrayDataType (const ArrayDataType &src)
 Copy constructor.
 ArrayDataType (const DataType &src)
 Copy constructor (overloaded version taking a data type)
const DataTypegetMemberType () const
 Retrieve the member type of this array data type.
size_t getNumMembers () const
 Retrieve the number of members of this array data type.
bool isDynamic () const
 True, if this array data type represents a dynamic array.
ArrayDataTypeoperator= (const DataType &src)
 Assignment operator.
virtual ~ArrayDataType ()
 Destructor.

Protected Member Functions

 ArrayDataType (const DataType &memberType, size_t numMembers)
 Constructor (overloaded version taking an member type and a number of members)

Static Protected Member Functions

template<typename T >
static ArrayDataType create ()
 Create an array data type (version templated on the array type)
template<typename T , size_t N>
static ArrayDataType create (typename boost::enable_if< boost::type_traits::ice_eq< N, 0 > >::type *=0)
 Create an array data type (overloaded version for creating a dynamic array data type)
template<typename T , size_t N>
static ArrayDataType create (typename boost::disable_if< boost::type_traits::ice_eq< N, 0 > >::type *=0)
 Create an array data type (overloaded version for creating a non-dynamic array data type)

Friends

class ArraySerializer
class ArrayVariant
class DataType
class DataTypeRegistry

Detailed Description

Array data type.

Definition at line 32 of file ArrayDataType.h.


Constructor & Destructor Documentation

Default constructor.

Definition at line 30 of file ArrayDataType.cpp.

Copy constructor.

Definition at line 38 of file ArrayDataType.cpp.

Copy constructor (overloaded version taking a data type)

Definition at line 42 of file ArrayDataType.cpp.

Destructor.

Definition at line 48 of file ArrayDataType.cpp.

variant_topic_tools::ArrayDataType::ArrayDataType ( const DataType memberType,
size_t  numMembers 
) [protected]

Constructor (overloaded version taking an member type and a number of members)

Definition at line 33 of file ArrayDataType.cpp.


Member Function Documentation

template<typename T >
static ArrayDataType variant_topic_tools::ArrayDataType::create ( ) [static, protected]

Create an array data type (version templated on the array type)

template<typename T , size_t N>
static ArrayDataType variant_topic_tools::ArrayDataType::create ( typename boost::enable_if< boost::type_traits::ice_eq< N, 0 > >::type *  = 0) [static, protected]

Create an array data type (overloaded version for creating a dynamic array data type)

template<typename T , size_t N>
static ArrayDataType variant_topic_tools::ArrayDataType::create ( typename boost::disable_if< boost::type_traits::ice_eq< N, 0 > >::type *  = 0) [static, protected]

Create an array data type (overloaded version for creating a non-dynamic array data type)

Retrieve the member type of this array data type.

Definition at line 72 of file ArrayDataType.cpp.

Retrieve the number of members of this array data type.

Definition at line 81 of file ArrayDataType.cpp.

True, if this array data type represents a dynamic array.

Definition at line 88 of file ArrayDataType.cpp.

ArrayDataType & variant_topic_tools::ArrayDataType::operator= ( const DataType src) [virtual]

Assignment operator.

Reimplemented from variant_topic_tools::DataType.

Definition at line 140 of file ArrayDataType.cpp.


Friends And Related Function Documentation

friend class ArraySerializer [friend]

Definition at line 34 of file ArrayDataType.h.

friend class ArrayVariant [friend]

Definition at line 35 of file ArrayDataType.h.

friend class DataType [friend]

Definition at line 36 of file ArrayDataType.h.

friend class DataTypeRegistry [friend]

Reimplemented from variant_topic_tools::DataType.

Definition at line 37 of file ArrayDataType.h.


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


variant_topic_tools
Author(s): Ralf Kaestner
autogenerated on Tue Jul 9 2019 03:18:42