VTK
Public Member Functions | List of all members
vtkTuple< T, Size > Class Template Reference

templated base type for containers of constant size. More...

#include <vtkTuple.h>

Inheritance diagram for vtkTuple< T, Size >:
[legend]

Public Member Functions

 vtkTuple ()
 The default constructor does not initialize values. More...
 
 vtkTuple (const T &scalar)
 Initialize all of the tuple's elements with the supplied scalar. More...
 
 vtkTuple (const T *init)
 Initalize the tuple's elements with the elements of the supplied array. More...
 
int GetSize () const
 Get the size of the tuple. More...
 
T * GetData ()
 Get a pointer to the underlying data of the tuple. More...
 
const T * GetData () const
 
T & operator[] (int i)
 Get a reference to the underlying data element of the tuple. More...
 
const T & operator[] (int i) const
 
operator() (int i) const
 Get the value of the tuple at the index specifed. More...
 
bool Compare (const vtkTuple< T, Size > &other, const T &tol) const
 Equality operator with a tolerance to allow fuzzy comparisons. More...
 
template<typename TR >
vtkTuple< TR, Size > Cast () const
 Cast the tuple to the specified type, returning the result. More...
 

Protected Attributes

Data [Size]
 The only thing stored in memory! More...
 

Detailed Description

template<typename T, int Size>
class vtkTuple< T, Size >

templated base type for containers of constant size.

This class is a templated data type for storing and manipulating tuples.

Definition at line 35 of file vtkTuple.h.

Constructor & Destructor Documentation

template<typename T, int Size>
vtkTuple< T, Size >::vtkTuple ( )
inline

The default constructor does not initialize values.

If initializtion is desired, this should be done explicitly using the constructors for scalar initialization, or other suitable constructors taking arguments.

Definition at line 43 of file vtkTuple.h.

template<typename T, int Size>
vtkTuple< T, Size >::vtkTuple ( const T &  scalar)
inlineexplicit

Initialize all of the tuple's elements with the supplied scalar.

Definition at line 50 of file vtkTuple.h.

template<typename T, int Size>
vtkTuple< T, Size >::vtkTuple ( const T *  init)
inlineexplicit

Initalize the tuple's elements with the elements of the supplied array.

Note that the supplied pointer must contain at least as many elements as the tuple, or it will result in access to out of bounds memory.

Definition at line 63 of file vtkTuple.h.

Member Function Documentation

template<typename T, int Size>
int vtkTuple< T, Size >::GetSize ( ) const
inline

Get the size of the tuple.

Definition at line 74 of file vtkTuple.h.

template<typename T, int Size>
T* vtkTuple< T, Size >::GetData ( )
inline

Get a pointer to the underlying data of the tuple.

Definition at line 79 of file vtkTuple.h.

template<typename T, int Size>
const T* vtkTuple< T, Size >::GetData ( ) const
inline

Definition at line 80 of file vtkTuple.h.

template<typename T, int Size>
T& vtkTuple< T, Size >::operator[] ( int  i)
inline

Get a reference to the underlying data element of the tuple.

This works similarly to the way C++ STL containers work. No bounds checking is performed.

Definition at line 87 of file vtkTuple.h.

template<typename T, int Size>
const T& vtkTuple< T, Size >::operator[] ( int  i) const
inline

Definition at line 88 of file vtkTuple.h.

template<typename T, int Size>
T vtkTuple< T, Size >::operator() ( int  i) const
inline

Get the value of the tuple at the index specifed.

Does bounds checking, similar to the at(i) method of C++ STL containers, but only when the code is compiled in debug mode.

Definition at line 96 of file vtkTuple.h.

template<typename T, int Size>
bool vtkTuple< T, Size >::Compare ( const vtkTuple< T, Size > &  other,
const T &  tol 
) const
inline

Equality operator with a tolerance to allow fuzzy comparisons.

Definition at line 107 of file vtkTuple.h.

template<typename T, int Size>
template<typename TR >
vtkTuple<TR, Size> vtkTuple< T, Size >::Cast ( ) const
inline

Cast the tuple to the specified type, returning the result.

Definition at line 129 of file vtkTuple.h.

Member Data Documentation

template<typename T, int Size>
T vtkTuple< T, Size >::Data[Size]
protected

The only thing stored in memory!

Definition at line 145 of file vtkTuple.h.


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