ITK  5.0.0
Insight Segmentation and Registration Toolkit
Public Types | Static Public Member Functions | Static Public Attributes | Private Types | List of all members
itk::NumericTraits< SymmetricSecondRankTensor< T, D > > Class Template Reference

#include <itkNumericTraitsTensorPixel.h>

+ Collaboration diagram for itk::NumericTraits< SymmetricSecondRankTensor< T, D > >:

Detailed Description

template<typename T, unsigned int D>
class itk::NumericTraits< SymmetricSecondRankTensor< T, D > >

Define numeric traits for SymmetricSecondRankTensor.

Template Parameters
TComponent type of SymmetricSecondRankTensor
DDimension of the SymmetricSecondRankTensor

We provide here a generic implementation based on creating types of SymmetricSecondRankTensor whose components are the types of the NumericTraits from the original SymmetricSecondRankTensor components. This implementation require support for partial specializations, since it is based on the concept that: NumericTraits<SymmetricSecondRankTensor< T, D > > is defined piecewise by SymmetricSecondRankTensor< NumericTraits< T, D > >

See Also
NumericTraits

Definition at line 44 of file itkNumericTraitsTensorPixel.h.

Public Types

using AbsType = SymmetricSecondRankTensor< ElementAbsType, D >
 
using AccumulateType = SymmetricSecondRankTensor< ElementAccumulateType, D >
 
using FloatType = SymmetricSecondRankTensor< ElementFloatType, D >
 
using MeasurementVectorType = Self
 
using PrintType = SymmetricSecondRankTensor< ElementPrintType, D >
 
using RealType = SymmetricSecondRankTensor< ElementRealType, D >
 
using ScalarRealType = ElementRealType
 
using Self = SymmetricSecondRankTensor< T, D >
 
using ValueType = T
 

Static Public Member Functions

static void AssignToArray (const Self &v, MeasurementVectorType &mv)
 
template<typename TArray >
static void AssignToArray (const Self &v, TArray &mv)
 
static unsigned int GetLength (const SymmetricSecondRankTensor< T, D > &)
 
static unsigned int GetLength ()
 
static const Self max (const Self &)
 
static const Self max ()
 
static const Self min (const Self &)
 
static const Self min ()
 
static const Self NonpositiveMin ()
 
static const Self NonpositiveMin (const Self &)
 
static const Self OneValue ()
 
static const Self OneValue (const Self &)
 
static const Self ZeroValue ()
 
static const Self ZeroValue (const Self &)
 
static void SetLength (SymmetricSecondRankTensor< T, D > &m, const unsigned int s)
 

Static Public Attributes

static constexpr bool IsComplex = NumericTraits< ValueType >::IsComplex
 
static constexpr bool IsInteger = NumericTraits< ValueType >::IsInteger
 
static constexpr bool IsSigned = NumericTraits< ValueType >::IsSigned
 
static const Self ITKCommon_EXPORT One
 
static const Self ITKCommon_EXPORT Zero
 

Private Types

using ElementAbsType = typename NumericTraits< T >::AbsType
 
using ElementAccumulateType = typename NumericTraits< T >::AccumulateType
 
using ElementFloatType = typename NumericTraits< T >::FloatType
 
using ElementPrintType = typename NumericTraits< T >::PrintType
 
using ElementRealType = typename NumericTraits< T >::RealType
 

Member Typedef Documentation

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::AbsType = SymmetricSecondRankTensor< ElementAbsType, D >

Unsigned component type

Definition at line 62 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::AccumulateType = SymmetricSecondRankTensor< ElementAccumulateType, D >

Accumulation of addition and multiplication.

Definition at line 65 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ElementAbsType = typename NumericTraits< T >::AbsType
private

Definition at line 48 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ElementAccumulateType = typename NumericTraits< T >::AccumulateType
private

Definition at line 49 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ElementFloatType = typename NumericTraits< T >::FloatType
private

Definition at line 50 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ElementPrintType = typename NumericTraits< T >::PrintType
private

Definition at line 51 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ElementRealType = typename NumericTraits< T >::RealType
private

Definition at line 52 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::FloatType = SymmetricSecondRankTensor< ElementFloatType, D >

Typedef for operations that use floating point instead of real precision

Definition at line 69 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::MeasurementVectorType = Self

Measurement vector type

Definition at line 81 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::PrintType = SymmetricSecondRankTensor< ElementPrintType, D >

Return the type that can be printed.

Definition at line 72 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::RealType = SymmetricSecondRankTensor< ElementRealType, D >

Type for real-valued scalar operations.

Definition at line 75 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ScalarRealType = ElementRealType

Type for real-valued scalar operations.

Definition at line 78 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::Self = SymmetricSecondRankTensor< T, D >

Definition at line 59 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
using itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ValueType = T

Return the type of the native component type.

Definition at line 57 of file itkNumericTraitsTensorPixel.h.

Member Function Documentation

template<typename T , unsigned int D>
static void itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::AssignToArray ( const Self v,
MeasurementVectorType mv 
)
inlinestatic

Definition at line 170 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
template<typename TArray >
static void itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::AssignToArray ( const Self v,
TArray &  mv 
)
inlinestatic

Definition at line 176 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static unsigned int itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::GetLength ( const SymmetricSecondRankTensor< T, D > &  )
inlinestatic

Return the size of the underlying FixedArray.

Definition at line 159 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static unsigned int itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::GetLength ( )
inlinestatic

Return the size of the underlying FixedArray.

Definition at line 165 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::max ( const Self )
inlinestatic

Component wise defined element

Note
minimum value for floating pointer types is defined as minimum positive normalize value.

Definition at line 88 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::max ( )
inlinestatic

Definition at line 98 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::min ( const Self )
inlinestatic

Definition at line 93 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::min ( )
inlinestatic

Definition at line 103 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::NonpositiveMin ( )
inlinestatic

Definition at line 108 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::NonpositiveMin ( const Self )
inlinestatic

Definition at line 123 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::OneValue ( )
inlinestatic

Definition at line 118 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::OneValue ( const Self )
inlinestatic

Definition at line 133 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static void itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::SetLength ( SymmetricSecondRankTensor< T, D > &  m,
const unsigned int  s 
)
inlinestatic

Fixed length vectors cannot be resized, so an exception will be thrown if the input size is not valid. Here, the size refers to the dimensionality of the unerlying FixedArray, not the tensor dimensionality.

Definition at line 146 of file itkNumericTraitsTensorPixel.h.

References itk::FixedArray< TComponent, NDimension *(NDimension+1)/2 >::Fill().

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ZeroValue ( )
inlinestatic

Definition at line 113 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
static const Self itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::ZeroValue ( const Self )
inlinestatic

Definition at line 128 of file itkNumericTraitsTensorPixel.h.

Member Data Documentation

template<typename T , unsigned int D>
constexpr bool itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::IsComplex = NumericTraits< ValueType >::IsComplex
static

Definition at line 140 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
constexpr bool itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::IsInteger = NumericTraits< ValueType >::IsInteger
static

Definition at line 139 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
constexpr bool itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::IsSigned = NumericTraits< ValueType >::IsSigned
static

Definition at line 138 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
const Self ITKCommon_EXPORT itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::One
static

Definition at line 188 of file itkNumericTraitsTensorPixel.h.

template<typename T , unsigned int D>
const Self ITKCommon_EXPORT itk::NumericTraits< SymmetricSecondRankTensor< T, D > >::Zero
static
Note
: the functions are preferred over the member variables as they are defined for all partial specialization

Definition at line 187 of file itkNumericTraitsTensorPixel.h.


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