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

itk::Offset< VOffsetDimension > Class Template Reference
[Image Access Objects]

#include <itkOffset.h>

List of all members.


Detailed Description

template<unsigned int VOffsetDimension = 2>
class itk::Offset< VOffsetDimension >

Represent the offset between two n-dimensional indexes in a n-dimensional image.

Offset is a templated class to represent a multi-dimensional offset, i.e. (i,j,k,...). Offset is templated over the dimension of the space.

For the sake of efficiency, Offset does not define a default constructor, a copy constructor, or an operator=. We rely on the compiler to provide efficient bitwise copies.

See also:
Index

Definition at line 53 of file itkOffset.h.

Public Types

typedef Offset< VOffsetDimension > OffsetType
typedef long OffsetValueType
typedef Offset Self

Public Member Functions

void Fill (OffsetValueType value)
const OffsetValueTypeGetOffset () const
OffsetValueType operator[] (unsigned int dim) const
OffsetValueTypeoperator[] (unsigned int dim)
void SetOffset (const OffsetValueType val[VOffsetDimension])
bool operator!= (const Self &vec) const
const Self operator+ (const Size< VOffsetDimension > &size) const
const Self operator+ (const Self &offset) const
const Selfoperator+= (const Self &vec)
const Selfoperator+= (const Size< VOffsetDimension > &size)
const Self operator- (const Self &vec)
const Selfoperator-= (const Self &vec)
const Selfoperator-= (const Size< VOffsetDimension > &size)
bool operator== (const Self &vec) const

Static Public Member Functions

static Self GetBasisOffset (unsigned int dim)
static unsigned int GetOffsetDimension ()

Public Attributes

OffsetValueType m_Offset [VOffsetDimension]


Member Typedef Documentation

template<unsigned int VOffsetDimension = 2>
typedef Offset<VOffsetDimension> itk::Offset< VOffsetDimension >::OffsetType

Compatible offset typedefs.

Definition at line 62 of file itkOffset.h.

template<unsigned int VOffsetDimension = 2>
typedef long itk::Offset< VOffsetDimension >::OffsetValueType

Definition at line 63 of file itkOffset.h.

template<unsigned int VOffsetDimension = 2>
typedef Offset itk::Offset< VOffsetDimension >::Self

Standard class typedefs.

Definition at line 56 of file itkOffset.h.


Member Function Documentation

template<unsigned int VOffsetDimension = 2>
void itk::Offset< VOffsetDimension >::Fill ( OffsetValueType  value  )  [inline]

Set one value for the offset in all dimensions. Useful for initializing an offset to zero.

Definition at line 189 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension>
Offset< VOffsetDimension > itk::Offset< VOffsetDimension >::GetBasisOffset ( unsigned int  dim  )  [static]

Return a basis vector of the form [0, ..., 0, 1, 0, ... 0] where the "1" is positioned in the location specified by the parameter "dim". Valid values of "dim" are 0, ..., VOffsetDimension-1.

Definition at line 213 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const OffsetValueType* itk::Offset< VOffsetDimension >::GetOffset ( void   )  const [inline]

Get the index. This provides a read only reference to the index.

See also:
SetOffset()

Definition at line 173 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
static unsigned int itk::Offset< VOffsetDimension >::GetOffsetDimension (  )  [inline, static]

Get the dimension (size) of the index.

Definition at line 59 of file itkOffset.h.

template<unsigned int VOffsetDimension = 2>
bool itk::Offset< VOffsetDimension >::operator!= ( const Self vec  )  const [inline]

Compare two offsets.

Definition at line 151 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self itk::Offset< VOffsetDimension >::operator+ ( const Size< VOffsetDimension > &  size  )  const [inline]

Add a size to an offset.

Definition at line 78 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self itk::Offset< VOffsetDimension >::operator+ ( const Self offset  )  const [inline]

Add an offset to an offset.

Definition at line 67 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self& itk::Offset< VOffsetDimension >::operator+= ( const Self vec  )  [inline]

Increment offset by an offset.

Definition at line 120 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self& itk::Offset< VOffsetDimension >::operator+= ( const Size< VOffsetDimension > &  size  )  [inline]

Increment index by a size.

Definition at line 89 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self itk::Offset< VOffsetDimension >::operator- ( const Self vec  )  [inline]

Subtract two offsets.

Definition at line 109 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self& itk::Offset< VOffsetDimension >::operator-= ( const Self vec  )  [inline]

Decrement offset by an offset.

Definition at line 130 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
const Self& itk::Offset< VOffsetDimension >::operator-= ( const Size< VOffsetDimension > &  size  )  [inline]

Decrement index by a size.

Definition at line 99 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
bool itk::Offset< VOffsetDimension >::operator== ( const Self vec  )  const [inline]

Compare two offsets.

Definition at line 140 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
OffsetValueType itk::Offset< VOffsetDimension >::operator[] ( unsigned int  dim  )  const [inline]

Access an element of the index. Elements are numbered 0, ..., VOffsetDimension-1. This version can only be an rvalue. No bounds checking is performed.

Definition at line 168 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
OffsetValueType& itk::Offset< VOffsetDimension >::operator[] ( unsigned int  dim  )  [inline]

Access an element of the offset. Elements are numbered 0, ..., VOffsetDimension-1. No bounds checking is performed.

Definition at line 162 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.

template<unsigned int VOffsetDimension = 2>
void itk::Offset< VOffsetDimension >::SetOffset ( const OffsetValueType  val[VOffsetDimension]  )  [inline]

Set the index. Try to prototype this function so that val has to point to a block of memory that is the appropriate size.

See also:
GetOffset()

Definition at line 179 of file itkOffset.h.

References itk::Offset< VOffsetDimension >::m_Offset.


Member Data Documentation

template<unsigned int VOffsetDimension = 2>
OffsetValueType itk::Offset< VOffsetDimension >::m_Offset[VOffsetDimension]

Offset is an "aggregate" class. Its data is public (m_Offset) allowing for fast and convenient instantiations/assignments.

The following syntax for assigning an index is allowed/suggested: Offset<3> index = {5, 2, 7};

Definition at line 197 of file itkOffset.h.

Referenced by itk::Offset< VOffsetDimension >::Fill(), itk::Offset< VOffsetDimension >::GetBasisOffset(), itk::Offset< VOffsetDimension >::GetOffset(), itk::Offset< VOffsetDimension >::operator!=(), itk::Offset< VOffsetDimension >::operator+(), itk::Offset< VOffsetDimension >::operator+=(), itk::Offset< VOffsetDimension >::operator-(), itk::Index< VIndexDimension >::operator-(), itk::Offset< VOffsetDimension >::operator-=(), itk::Offset< VOffsetDimension >::operator==(), itk::Offset< VOffsetDimension >::operator[](), and itk::Offset< VOffsetDimension >::SetOffset().


The documentation for this class was generated from the following file:
Generated at Wed Jul 30 08:12:15 2008 for ITK by doxygen 1.5.1 written by Dimitri van Heesch, © 1997-2000