Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::FixedArray< TValueType, VLength > Class Template Reference
[Data Representation Objects]

Simulate a standard C array with copy semnatics. More...

#include <itkFixedArray.h>

List of all members.

Classes

class  ConstReverseIterator
 A const reverse iterator through the array. More...
class  ReverseIterator
 A reverse iterator through the array. More...

Public Types

typedef ValueType CArray [VLength]
typedef const ValueTypeconst_pointer
typedef const ValueTypeconst_reference
typedef const ValueTypeConstIterator
typedef ValueTypeIterator
typedef ValueTypepointer
typedef ValueTypereference
typedef unsigned int SizeType
typedef TValueType ValueType

Public Member Functions

 itkStaticConstMacro (Dimension, unsigned int, VLength)
 itkStaticConstMacro (Length, unsigned int, VLength)
FixedArrayoperator= (const ValueType r[VLength])
ConstIterator Begin () const
Iterator Begin ()
ConstIterator End () const
Iterator End ()
void Fill (const ValueType &)
ConstReverseIterator rBegin () const
ReverseIterator rBegin ()
ConstReverseIterator rEnd () const
ReverseIterator rEnd ()
SizeType Size () const
template<class TFixedArrayValueType >
 FixedArray (const FixedArray< TFixedArrayValueType, VLength > &r)
 FixedArray (const ValueType r[VLength])
 FixedArray ()
const ValueTypeGetDataPointer () const
ValueTypeGetDataPointer ()
const_reference GetElement (unsigned short index) const
void SetElement (unsigned short index, const_reference value)
bool operator!= (const FixedArray &r) const
bool operator== (const FixedArray &r) const
template<class TFixedArrayValueType >
FixedArrayoperator= (const FixedArray< TFixedArrayValueType, VLength > &r)
const_reference operator[] (unsigned long index) const
reference operator[] (unsigned long index)
const_reference operator[] (long index) const
reference operator[] (long index)
const_reference operator[] (unsigned int index) const
reference operator[] (unsigned int index)
const_reference operator[] (int index) const
reference operator[] (int index)
const_reference operator[] (unsigned short index) const
reference operator[] (unsigned short index)
const_reference operator[] (short index) const
reference operator[] (short index)

Static Public Member Functions

static FixedArray Filled (const ValueType &)


Detailed Description

template<typename TValueType, unsigned int VLength = 3>
class itk::FixedArray< TValueType, VLength >

Simulate a standard C array with copy semnatics.

Simulates a standard C array, except that copy semantics are used instead of reference semantics. Also, arrays of different sizes cannot be assigned to one another, and size information is known for function returns.

Template parameters for class FixedArray:

The length of the array is fixed at compile time. If you wish to specify the length of the array at run-time, use the class itk::Array. If you wish to change to change the length of the array at run-time, you're best off using std::vector<>.

Examples:

Testing/Code/Common/itkVectorImageTest.cxx.

Definition at line 64 of file itkFixedArray.h.


Member Typedef Documentation

template<typename TValueType, unsigned int VLength = 3>
typedef ValueType itk::FixedArray< TValueType, VLength >::CArray[VLength]

A type representing the C-array version of this FixedArray.

Definition at line 77 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
typedef const ValueType* itk::FixedArray< TValueType, VLength >::const_pointer

A const pointer to the ValueType.

Definition at line 129 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
typedef const ValueType& itk::FixedArray< TValueType, VLength >::const_reference

A const reference to the ValueType.

Definition at line 135 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
typedef const ValueType* itk::FixedArray< TValueType, VLength >::ConstIterator

template<typename TValueType, unsigned int VLength = 3>
typedef ValueType* itk::FixedArray< TValueType, VLength >::Iterator

template<typename TValueType, unsigned int VLength = 3>
typedef ValueType* itk::FixedArray< TValueType, VLength >::pointer

A pointer to the ValueType.

Definition at line 126 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
typedef ValueType& itk::FixedArray< TValueType, VLength >::reference

A reference to the ValueType.

Definition at line 132 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
typedef unsigned int itk::FixedArray< TValueType, VLength >::SizeType

Definition at line 137 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
typedef TValueType itk::FixedArray< TValueType, VLength >::ValueType

The element type stored at each location in the FixedArray.

Reimplemented in itk::ContinuousIndex< TCoordRep, VIndexDimension >, itk::CovariantVector< T, NVectorDimension >, itk::DiffusionTensor3D< TComponent >, itk::Point< TCoordRep, NPointDimension >, itk::RGBPixel< TComponent >, itk::SymmetricSecondRankTensor< TComponent, NDimension >, itk::Vector< T, NVectorDimension >, itk::QuadEdgeMeshPoint< TCoordRep, VPointDimension, TQuadEdge >, itk::ContinuousIndex< TOutput, itkGetStaticConstMacro(ImageDimension)>, itk::ContinuousIndex< TCoordRep, itkGetStaticConstMacro(ImageDimension)>, itk::ContinuousIndex< float, itkGetStaticConstMacro(ImageDimension)>, itk::CovariantVector< double, VImageDimension >, itk::CovariantVector< double, TImageDimension >, itk::CovariantVector< double, 3 >, itk::CovariantVector< double, 2 >, itk::CovariantVector< double, VDimension >, itk::CovariantVector< double, TPointDimension >, itk::Point< double, VImageDimension >, itk::Point< TCoordRep, VPointDimension >, itk::Point< double, TImageDimension >, itk::Point< PointValueType, VImageDimension >, itk::Point< double, NDimensions >, itk::Point< double, 3 >, itk::Point< double, TDimension >, itk::Point< double, 2 >, itk::Point< TScalarType, itkGetStaticConstMacro(InputSpaceDimension)>, itk::Point< double, itkGetStaticConstMacro(ImageDimension) >, itk::Point< TScalarType, itkGetStaticConstMacro(SpaceDimension)>, itk::Point< float, VIndexDimension >, itk::Point< double, TPointDimension >, itk::Point< double, VDimensions >, itk::Point< CoordRepType, itkGetStaticConstMacro(ImageDimension)>, itk::Point< TOutput, VIndexDimension >, itk::Point< TCoordRep, VIndexDimension >, itk::RGBPixel< float >, itk::RGBPixel< TPixel >, itk::SymmetricSecondRankTensor< TComponent, 3 >, itk::Vector< double, VImageDimension >, itk::Vector< double, TSampleDimension >, itk::Vector< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension)>, itk::Vector< ScalarType, itkGetStaticConstMacro(ImageDimension)>, itk::Vector< double, 3 >, itk::Vector< TScalarType, itkGetStaticConstMacro(InputSpaceDimension)>, itk::Vector< double, TDimension >, itk::Vector< double, 2 >, itk::Vector< SpacingValueType, VImageDimension >, itk::Vector< NodeValueType,::itk::GetImageDimension< TImageType >::ImageDimension >, itk::Vector< TScalarType, 3 >, itk::Vector< double, VDimension >, itk::Vector< TScalarType, itkGetStaticConstMacro(SpaceDimension)>, itk::Vector< double, itkGetStaticConstMacro(ImageDimension) >, itk::Vector< double, TPointDimension >, itk::Vector< int, 2 >, itk::Vector< double, NSpaceDimension >, itk::Vector< float, VDimension >, itk::Vector< TScalarType, 6 >, and itk::Vector< CoordRepType, itkGetStaticConstMacro(SpaceDimension)>.

Definition at line 74 of file itkFixedArray.h.


Constructor & Destructor Documentation

template<typename TValueType, unsigned int VLength = 3>
itk::FixedArray< TValueType, VLength >::FixedArray (  ) 

Constructors

template<typename TValueType, unsigned int VLength = 3>
itk::FixedArray< TValueType, VLength >::FixedArray ( const ValueType  r[VLength]  ) 

Constructors

template<typename TValueType, unsigned int VLength = 3>
template<class TFixedArrayValueType >
itk::FixedArray< TValueType, VLength >::FixedArray ( const FixedArray< TFixedArrayValueType, VLength > &  r  )  [inline]

Constructor to initialize a fixed array from another of any data type

Definition at line 147 of file itkFixedArray.h.


Member Function Documentation

template<typename TValueType, unsigned int VLength = 3>
ConstIterator itk::FixedArray< TValueType, VLength >::Begin (  )  const

Get various iterators to the array.

template<typename TValueType, unsigned int VLength = 3>
Iterator itk::FixedArray< TValueType, VLength >::Begin (  ) 

template<typename TValueType, unsigned int VLength = 3>
ConstIterator itk::FixedArray< TValueType, VLength >::End (  )  const

Get various iterators to the array.

template<typename TValueType, unsigned int VLength = 3>
Iterator itk::FixedArray< TValueType, VLength >::End (  ) 

template<typename TValueType, unsigned int VLength = 3>
void itk::FixedArray< TValueType, VLength >::Fill ( const ValueType  ) 

template<typename TValueType, unsigned int VLength = 3>
static FixedArray itk::FixedArray< TValueType, VLength >::Filled ( const ValueType  )  [static]

template<typename TValueType, unsigned int VLength = 3>
const ValueType* itk::FixedArray< TValueType, VLength >::GetDataPointer (  )  const [inline]

Return a pointer to the data.

Definition at line 222 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
ValueType* itk::FixedArray< TValueType, VLength >::GetDataPointer (  )  [inline]

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::GetElement ( unsigned short  index  )  const [inline]

Set/Get element methods are more convenient in wrapping languages

Definition at line 217 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
itk::FixedArray< TValueType, VLength >::itkStaticConstMacro ( Dimension  ,
unsigned  int,
VLength   
)

Dimension constant

template<typename TValueType, unsigned int VLength = 3>
itk::FixedArray< TValueType, VLength >::itkStaticConstMacro ( Length  ,
unsigned  int,
VLength   
)

Length constant

template<typename TValueType, unsigned int VLength = 3>
bool itk::FixedArray< TValueType, VLength >::operator!= ( const FixedArray< TValueType, VLength > &  r  )  const [inline]

Operators == and != are used to compare whether two arrays are equal. Note that arrays are equal when the number of components (size) is the same, and each component value is equal.

Definition at line 193 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
FixedArray& itk::FixedArray< TValueType, VLength >::operator= ( const ValueType  r[VLength]  ) 

template<typename TValueType, unsigned int VLength = 3>
template<class TFixedArrayValueType >
FixedArray& itk::FixedArray< TValueType, VLength >::operator= ( const FixedArray< TFixedArrayValueType, VLength > &  r  )  [inline]

This destructor is not virtual for performance reasons. However, this means that subclasses cannot allocate memory.

The destructor is PURPOSELY NOT DEFINED, in order to prevent inefficient byte alignment of arrays of this object.

~FixedArray();

For a full discussion, see http://www.itk.org/mailman/private/insight-developers/2008-June/010480.html Operator= defined for a variety of types.

Definition at line 174 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
bool itk::FixedArray< TValueType, VLength >::operator== ( const FixedArray< TValueType, VLength > &  r  )  const

Operators == and != are used to compare whether two arrays are equal. Note that arrays are equal when the number of components (size) is the same, and each component value is equal.

Referenced by itk::FixedArray< PointValueType, NPointDimension >::operator!=().

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::operator[] ( unsigned long  index  )  const [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 211 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
reference itk::FixedArray< TValueType, VLength >::operator[] ( unsigned long  index  )  [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 210 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::operator[] ( long  index  )  const [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 209 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
reference itk::FixedArray< TValueType, VLength >::operator[] ( long  index  )  [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 208 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::operator[] ( unsigned int  index  )  const [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 207 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
reference itk::FixedArray< TValueType, VLength >::operator[] ( unsigned int  index  )  [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 206 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::operator[] ( int  index  )  const [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 205 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
reference itk::FixedArray< TValueType, VLength >::operator[] ( int  index  )  [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 204 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::operator[] ( unsigned short  index  )  const [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 203 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
reference itk::FixedArray< TValueType, VLength >::operator[] ( unsigned short  index  )  [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 202 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
const_reference itk::FixedArray< TValueType, VLength >::operator[] ( short  index  )  const [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 201 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
reference itk::FixedArray< TValueType, VLength >::operator[] ( short  index  )  [inline]

Allow the FixedArray to be indexed normally. No bounds checking is done. The separate versions are a work-around for an integer conversion bug in Visual C++.

Definition at line 200 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
ConstReverseIterator itk::FixedArray< TValueType, VLength >::rBegin (  )  const

Get various iterators to the array.

template<typename TValueType, unsigned int VLength = 3>
ReverseIterator itk::FixedArray< TValueType, VLength >::rBegin (  ) 

Get various iterators to the array.

template<typename TValueType, unsigned int VLength = 3>
ConstReverseIterator itk::FixedArray< TValueType, VLength >::rEnd (  )  const

Get various iterators to the array.

template<typename TValueType, unsigned int VLength = 3>
ReverseIterator itk::FixedArray< TValueType, VLength >::rEnd (  ) 

Get various iterators to the array.

template<typename TValueType, unsigned int VLength = 3>
void itk::FixedArray< TValueType, VLength >::SetElement ( unsigned short  index,
const_reference  value 
) [inline]

Set/Get element methods are more convenient in wrapping languages

Definition at line 215 of file itkFixedArray.h.

template<typename TValueType, unsigned int VLength = 3>
SizeType itk::FixedArray< TValueType, VLength >::Size (  )  const

Get various iterators to the array.


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

Generated at Tue Sep 15 08:32:25 2009 for ITK by doxygen 1.5.8 written by Dimitri van Heesch, © 1997-2000