ITK  5.2.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | List of all members

#include <itkIndex.h>

+ Inheritance diagram for itk::Index< VDimension >:

Public Types

using IndexType = Index< VDimension >
 
using IndexValueType = ::itk::IndexValueType
 
using OffsetType = Offset< VDimension >
 
using OffsetValueType = ::itk::OffsetValueType
 
using Self = Index
 
using SizeType = Size< VDimension >
 

Public Member Functions

const Self operator+ (const SizeType &sz) const
 

Static Public Member Functions

static constexpr unsigned int GetIndexDimension ()
 

Static Public Attributes

static constexpr unsigned int Dimension = VDimension
 
using value_type = ::itk::IndexValueType
 
using reference = value_type &
 
using const_reference = const value_type &
 
using iterator = value_type *
 
using const_iterator = const value_type *
 
using size_type = unsigned int
 
using difference_type = std::ptrdiff_t
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 
IndexValueType m_InternalArray [VDimension]
 
static Self GetBasisIndex (unsigned int dim)
 
static Self Filled (const IndexValueType value)
 
const Selfoperator+= (const SizeType &sz)
 
const Self operator- (const SizeType &sz) const
 
const Selfoperator-= (const SizeType &sz)
 
const Self operator+ (const OffsetType &offset) const
 
const Selfoperator+= (const OffsetType &offset)
 
const Selfoperator-= (const OffsetType &offset)
 
const Self operator- (const OffsetType &off) const
 
const OffsetType operator- (const Self &vec) const
 
const Self operator* (const SizeType &vec) const
 
const IndexValueTypeGetIndex () const
 
void SetIndex (const IndexValueType val[VDimension])
 
void SetElement (unsigned long element, IndexValueType val)
 
IndexValueType GetElement (unsigned long element) const
 
void Fill (IndexValueType value)
 
template<typename TCoordRep >
void CopyWithRound (const FixedArray< TCoordRep, VDimension > &point)
 
template<typename TCoordRep >
void CopyWithCast (const FixedArray< TCoordRep, VDimension > &point)
 
void assign (const value_type &newValue)
 
void swap (Index &other)
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
constexpr size_type size () const
 
constexpr size_type max_size () const
 
constexpr bool empty () const
 
reference operator[] (size_type pos)
 
const_reference operator[] (size_type pos) const
 
reference at (size_type pos)
 
const_reference at (size_type pos) const
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
IndexValueTypedata ()
 
const IndexValueTypedata () const
 
void ExceptionThrowingBoundsCheck (size_type pos) const
 

Detailed Description

template<unsigned int VDimension = 2>
struct itk::Index< VDimension >

Represent a n-dimensional index in a n-dimensional image.

Index is a templated class to represent a multi-dimensional index, i.e. (i,j,k,...). Index is templated over the dimension of the index. ITK assumes the first element of an index is the fastest moving index.

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

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

The following syntax for assigning an aggregate type like this is allowed/suggested:

Index<3> var{{ 256, 256, 20 }}; // Also prevent narrowing conversions Index<3> var = {{ 256, 256, 20 }};

The doubled braces {{ and }} are required to prevent ‘gcc -Wall’ (and perhaps other compilers) from complaining about a partly bracketed initializer.

As an aggregate type that is intended to provide highest performance characteristics, this class is not appropriate to inherit from, so setting this struct as final.

ITK Sphinx Examples:
Examples
SphinxExamples/src/Core/Common/AddOffsetToIndex/Code.cxx, SphinxExamples/src/Core/Common/BresenhamLine/Code.cxx, SphinxExamples/src/Core/Common/CreateAIndex/Code.cxx, SphinxExamples/src/Core/Common/CreateAnother/Code.cxx, SphinxExamples/src/Core/Common/CropImageBySpecifyingRegion/Code.cxx, SphinxExamples/src/Core/Common/DistanceBetweenIndices/Code.cxx, SphinxExamples/src/Core/Common/FilterImage/Code.cxx, SphinxExamples/src/Core/Common/FilterImageWithoutCopying/Code.cxx, SphinxExamples/src/Core/Common/IterateImageStartingAtSeed/Code.cxx, SphinxExamples/src/Core/Common/NeighborhoodIteratorOnVectorImage/Code.cxx, SphinxExamples/src/Core/Common/PassImageToFunction/Code.cxx, SphinxExamples/src/Core/Common/ReturnObjectFromFunction/Code.cxx, SphinxExamples/src/Core/Common/SortITKIndex/Code.cxx, SphinxExamples/src/Core/ImageAdaptors/ExtractChannelOfImageWithMultipleComponents/Code.cxx, SphinxExamples/src/Core/ImageAdaptors/PresentImageAfterOperation/Code.cxx, SphinxExamples/src/Core/ImageAdaptors/ViewComponentVectorImageAsScaleImage/Code.cxx, SphinxExamples/src/Core/ImageFunction/ComputeMedianOfImageAtPixel/Code.cxx, SphinxExamples/src/Core/ImageFunction/MultiplyKernelWithAnImageAtLocation/Code.cxx, SphinxExamples/src/Core/Transform/ScaleAnImage/Code.cxx, SphinxExamples/src/Core/Transform/TranslateAVectorImage/Code.cxx, SphinxExamples/src/Developer/ImageFilter.cxx, SphinxExamples/src/Developer/InplaceImageFilter.cxx, SphinxExamples/src/Filtering/BinaryMathematicalMorphology/ClosingBinaryImage/Code.cxx, SphinxExamples/src/Filtering/BinaryMathematicalMorphology/OpeningBinaryImage/Code.cxx, SphinxExamples/src/Filtering/BinaryMathematicalMorphology/ThinImage/Code.cxx, SphinxExamples/src/Filtering/Convolution/ColorNormalizedCorrelation/Code.cxx, SphinxExamples/src/Filtering/Convolution/NormalizedCorrelation/Code.cxx, SphinxExamples/src/Filtering/Convolution/NormalizedCorrelationOfMaskedImage/Code.cxx, SphinxExamples/src/Filtering/Convolution/NormalizedCorrelationUsingFFT/Code.cxx, SphinxExamples/src/Filtering/Convolution/NormalizedCorrelationUsingFFTWithMaskImages/Code.cxx, SphinxExamples/src/Filtering/DistanceMap/ApproxDistanceMapOfBinary/Code.cxx, SphinxExamples/src/Filtering/DistanceMap/MaurerDistanceMapOfBinary/Code.cxx, SphinxExamples/src/Filtering/DistanceMap/MeanDistanceBetweenAllPointsOnTwoCurves/Code.cxx, SphinxExamples/src/Filtering/DistanceMap/SignedDistanceMapOfBinary/Code.cxx, SphinxExamples/src/Filtering/FFT/ComputeInverseFFTOfImage/Code.cxx, SphinxExamples/src/Filtering/ImageCompose/ComposeVectorFromThreeScalarImages/Code.cxx, SphinxExamples/src/Filtering/ImageCompose/JoinImages/Code.cxx, SphinxExamples/src/Filtering/ImageFeature/ApplyAFilterOnlyToASpecifiedImageRegion/Code.cxx, SphinxExamples/src/Filtering/ImageFeature/FindZeroCrossingsInSignedImage/Code.cxx, SphinxExamples/src/Filtering/ImageFilterBase/ApplyKernelToEveryPixelInNonZeroImage/Code.cxx, SphinxExamples/src/Filtering/ImageFilterBase/CustomOperationToCorrespondingPixelsInTwoImages/Code.cxx, SphinxExamples/src/Filtering/ImageFilterBase/PredefinedOperationToCorrespondingPixelsInTwoImages/Code.cxx, SphinxExamples/src/Filtering/ImageGradient/GradientOfVectorImage/Code.cxx, SphinxExamples/src/Filtering/ImageGrid/ResampleAnImage/Code.cxx, SphinxExamples/src/Filtering/ImageGrid/RunImageFilterOnRegionOfImage/Code.cxx, SphinxExamples/src/Filtering/LabelMap/RemoveLabelsFromLabelMap/Code.cxx, SphinxExamples/src/Filtering/Path/ExtractContoursFromImage/Code.cxx, SphinxExamples/src/Numerics/Statistics/ComputeTextureFeatures/Code.cxx, SphinxExamples/src/Registration/Common/MatchFeaturePoints/Code.cxx, and SphinxExamples/src/Segmentation/Watersheds/MorphologicalWatershedSegmentation/Code.cxx.

Definition at line 66 of file itkIndex.h.

Member Typedef Documentation

◆ const_iterator

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::const_iterator = const value_type *

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 334 of file itkIndex.h.

◆ const_reference

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::const_reference = const value_type &

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 332 of file itkIndex.h.

◆ const_reverse_iterator

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::const_reverse_iterator = std::reverse_iterator<const_iterator>

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 338 of file itkIndex.h.

◆ difference_type

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::difference_type = std::ptrdiff_t

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 336 of file itkIndex.h.

◆ IndexType

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::IndexType = Index<VDimension>

Compatible Index and value type alias

Definition at line 76 of file itkIndex.h.

◆ IndexValueType

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::IndexValueType = ::itk::IndexValueType

Definition at line 77 of file itkIndex.h.

◆ iterator

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::iterator = value_type *

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 333 of file itkIndex.h.

◆ OffsetType

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::OffsetType = Offset<VDimension>

Compatible Offset and Offset value type alias.

Definition at line 83 of file itkIndex.h.

◆ OffsetValueType

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::OffsetValueType = ::itk::OffsetValueType

Definition at line 84 of file itkIndex.h.

◆ reference

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::reference = value_type &

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 331 of file itkIndex.h.

◆ reverse_iterator

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::reverse_iterator = std::reverse_iterator<iterator>

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 337 of file itkIndex.h.

◆ Self

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::Self = Index

Standard class type aliases.

Definition at line 73 of file itkIndex.h.

◆ size_type

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::size_type = unsigned int

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 335 of file itkIndex.h.

◆ SizeType

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::SizeType = Size<VDimension>

Compatible Size type alias.

Definition at line 80 of file itkIndex.h.

◆ value_type

template<unsigned int VDimension = 2>
using itk::Index< VDimension >::value_type = ::itk::IndexValueType

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 330 of file itkIndex.h.

Member Function Documentation

◆ assign()

template<unsigned int VDimension = 2>
void itk::Index< VDimension >::assign ( const value_type newValue)
inline

Mirror behavior of the std::array manipulations See std::array for documentation on these methods

Definition at line 345 of file itkIndex.h.

◆ at() [1/2]

template<unsigned int VDimension = 2>
reference itk::Index< VDimension >::at ( size_type  pos)
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 427 of file itkIndex.h.

◆ at() [2/2]

template<unsigned int VDimension = 2>
const_reference itk::Index< VDimension >::at ( size_type  pos) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 434 of file itkIndex.h.

◆ back() [1/2]

template<unsigned int VDimension = 2>
reference itk::Index< VDimension >::back ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 453 of file itkIndex.h.

Referenced by itk::IndexRange< VDimension, VBeginAtZero >::end(), itk::IndexRange< VDimension, VBeginAtZero >::const_iterator::operator++(), and itk::IndexRange< VDimension, VBeginAtZero >::const_iterator::operator--().

◆ back() [2/2]

template<unsigned int VDimension = 2>
const_reference itk::Index< VDimension >::back ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 459 of file itkIndex.h.

◆ begin() [1/2]

template<unsigned int VDimension = 2>
iterator itk::Index< VDimension >::begin ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 357 of file itkIndex.h.

Referenced by itk::operator<(), and itk::operator==().

◆ begin() [2/2]

template<unsigned int VDimension = 2>
const_iterator itk::Index< VDimension >::begin ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 363 of file itkIndex.h.

◆ CopyWithCast()

template<unsigned int VDimension = 2>
template<typename TCoordRep >
void itk::Index< VDimension >::CopyWithCast ( const FixedArray< TCoordRep, VDimension > &  point)
inline

Copy values from a FixedArray by casting each one of the components

Definition at line 308 of file itkIndex.h.

◆ CopyWithRound()

template<unsigned int VDimension = 2>
template<typename TCoordRep >
void itk::Index< VDimension >::CopyWithRound ( const FixedArray< TCoordRep, VDimension > &  point)
inline

Copy values from a FixedArray by rounding each one of the components

Definition at line 296 of file itkIndex.h.

◆ data() [1/2]

template<unsigned int VDimension = 2>
IndexValueType* itk::Index< VDimension >::data ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 465 of file itkIndex.h.

◆ data() [2/2]

template<unsigned int VDimension = 2>
const IndexValueType* itk::Index< VDimension >::data ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 471 of file itkIndex.h.

◆ empty()

template<unsigned int VDimension = 2>
constexpr bool itk::Index< VDimension >::empty ( ) const
inlineconstexpr

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 417 of file itkIndex.h.

◆ end() [1/2]

template<unsigned int VDimension = 2>
iterator itk::Index< VDimension >::end ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 369 of file itkIndex.h.

Referenced by itk::operator<(), and itk::operator==().

◆ end() [2/2]

template<unsigned int VDimension = 2>
const_iterator itk::Index< VDimension >::end ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 375 of file itkIndex.h.

◆ ExceptionThrowingBoundsCheck()

template<unsigned int VDimension = 2>
void itk::Index< VDimension >::ExceptionThrowingBoundsCheck ( size_type  pos) const
inlineprivate

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 491 of file itkIndex.h.

◆ Fill()

template<unsigned int VDimension = 2>
void itk::Index< VDimension >::Fill ( IndexValueType  value)
inline

◆ Filled()

template<unsigned int VDimension = 2>
static Self itk::Index< VDimension >::Filled ( const IndexValueType  value)
inlinestatic

Returns an Index object, filled with the specified value for each element.

Definition at line 480 of file itkIndex.h.

◆ front() [1/2]

template<unsigned int VDimension = 2>
reference itk::Index< VDimension >::front ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 441 of file itkIndex.h.

◆ front() [2/2]

template<unsigned int VDimension = 2>
const_reference itk::Index< VDimension >::front ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 447 of file itkIndex.h.

◆ GetBasisIndex()

template<unsigned int VDimension>
Index< VDimension > itk::Index< VDimension >::GetBasisIndex ( 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, ..., VDimension-1.

Definition at line 503 of file itkIndex.h.

◆ GetElement()

template<unsigned int VDimension = 2>
IndexValueType itk::Index< VDimension >::GetElement ( unsigned long  element) const
inline

Gets the value of one of the elements. This method is mainly intended to facilitate the access to elements from Tcl and Python where C++ notation is not very convenient.

Warning
No bound checking is performed
See also
GetIndex()
SetElement()

Definition at line 262 of file itkIndex.h.

◆ GetIndex()

template<unsigned int VDimension = 2>
const IndexValueType* itk::Index< VDimension >::GetIndex ( ) const
inline

◆ GetIndexDimension()

template<unsigned int VDimension = 2>
static constexpr unsigned int itk::Index< VDimension >::GetIndexDimension ( )
inlinestaticconstexpr

Get the dimension.

Definition at line 91 of file itkIndex.h.

◆ max_size()

template<unsigned int VDimension = 2>
constexpr size_type itk::Index< VDimension >::max_size ( ) const
inlineconstexpr

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 411 of file itkIndex.h.

◆ operator*()

template<unsigned int VDimension = 2>
const Self itk::Index< VDimension >::operator* ( const SizeType vec) const
inline

Multiply an index by a size (elementwise product).

Definition at line 214 of file itkIndex.h.

◆ operator+() [1/2]

template<unsigned int VDimension = 2>
const Self itk::Index< VDimension >::operator+ ( const OffsetType offset) const
inline

Add an offset to an index.

Definition at line 150 of file itkIndex.h.

◆ operator+() [2/2]

template<unsigned int VDimension = 2>
const Self itk::Index< VDimension >::operator+ ( const SizeType sz) const
inline

Add a size to an index.

Definition at line 99 of file itkIndex.h.

◆ operator+=() [1/2]

template<unsigned int VDimension = 2>
const Self& itk::Index< VDimension >::operator+= ( const OffsetType offset)
inline

Increment index by an offset.

Definition at line 163 of file itkIndex.h.

◆ operator+=() [2/2]

template<unsigned int VDimension = 2>
const Self& itk::Index< VDimension >::operator+= ( const SizeType sz)
inline

Increment index by a size.

Definition at line 112 of file itkIndex.h.

◆ operator-() [1/3]

template<unsigned int VDimension = 2>
const Self itk::Index< VDimension >::operator- ( const OffsetType off) const
inline

Subtract an offset from an index.

Definition at line 187 of file itkIndex.h.

◆ operator-() [2/3]

template<unsigned int VDimension = 2>
const OffsetType itk::Index< VDimension >::operator- ( const Self vec) const
inline

Subtract two indices.

Definition at line 200 of file itkIndex.h.

◆ operator-() [3/3]

template<unsigned int VDimension = 2>
const Self itk::Index< VDimension >::operator- ( const SizeType sz) const
inline

Subtract a size from an index.

Definition at line 125 of file itkIndex.h.

◆ operator-=() [1/2]

template<unsigned int VDimension = 2>
const Self& itk::Index< VDimension >::operator-= ( const OffsetType offset)
inline

Decrement index by an offset.

Definition at line 175 of file itkIndex.h.

◆ operator-=() [2/2]

template<unsigned int VDimension = 2>
const Self& itk::Index< VDimension >::operator-= ( const SizeType sz)
inline

Decrement index by a size.

Definition at line 138 of file itkIndex.h.

◆ operator[]() [1/2]

template<unsigned int VDimension = 2>
reference itk::Index< VDimension >::operator[] ( size_type  pos)
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 422 of file itkIndex.h.

◆ operator[]() [2/2]

template<unsigned int VDimension = 2>
const_reference itk::Index< VDimension >::operator[] ( size_type  pos) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 424 of file itkIndex.h.

◆ rbegin() [1/2]

template<unsigned int VDimension = 2>
reverse_iterator itk::Index< VDimension >::rbegin ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 381 of file itkIndex.h.

◆ rbegin() [2/2]

template<unsigned int VDimension = 2>
const_reverse_iterator itk::Index< VDimension >::rbegin ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 387 of file itkIndex.h.

◆ rend() [1/2]

template<unsigned int VDimension = 2>
reverse_iterator itk::Index< VDimension >::rend ( )
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 393 of file itkIndex.h.

◆ rend() [2/2]

template<unsigned int VDimension = 2>
const_reverse_iterator itk::Index< VDimension >::rend ( ) const
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 399 of file itkIndex.h.

◆ SetElement()

template<unsigned int VDimension = 2>
void itk::Index< VDimension >::SetElement ( unsigned long  element,
IndexValueType  val 
)
inline

Sets the value of one of the elements. This method is mainly intended to facilitate the access to elements from Tcl and Python where C++ notation is not very convenient.

Warning
No bound checking is performed.
See also
SetIndex()
GetElement()

Definition at line 250 of file itkIndex.h.

◆ SetIndex()

template<unsigned int VDimension = 2>
void itk::Index< VDimension >::SetIndex ( const IndexValueType  val[VDimension])
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
GetIndex()

Definition at line 238 of file itkIndex.h.

Referenced by itk::BoxMeanCalculatorFunction(), and itk::BoxSigmaCalculatorFunction().

◆ size()

template<unsigned int VDimension = 2>
constexpr size_type itk::Index< VDimension >::size ( ) const
inlineconstexpr

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 405 of file itkIndex.h.

◆ swap()

template<unsigned int VDimension = 2>
void itk::Index< VDimension >::swap ( Index< VDimension > &  other)
inline

Mirror the std::array type aliases and member function so that the Index class can be treated as a container class in a way that is similar to the std::array.

Definition at line 351 of file itkIndex.h.

Member Data Documentation

◆ Dimension

template<unsigned int VDimension = 2>
constexpr unsigned int itk::Index< VDimension >::Dimension = VDimension
staticconstexpr

Dimension constant

Definition at line 87 of file itkIndex.h.

◆ m_InternalArray

template<unsigned int VDimension = 2>
IndexValueType itk::Index< VDimension >::m_InternalArray[VDimension]

Index is an "aggregate" class. Its data is public (m_InternalArray) allowing for fast and convenient instantiations/assignments. ( See main class documentation for an example of initialization)

Definition at line 289 of file itkIndex.h.

Referenced by itk::Index< Self::ImageDimension >::GetBasisIndex(), itk::Index< Self::ImageDimension >::operator-(), itk::MultiThreaderBase::ParallelizeImageRegion(), itk::Index< Self::ImageDimension >::swap(), and itk::swap().


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