ITK  5.4.0
Insight Toolkit
Public Types | Static Public Member Functions | Static Public Attributes | Private Types | List of all members
itk::NumericTraits< DiffusionTensor3D< T > > Class Template Reference

#include <itkNumericTraitsDiffusionTensor3DPixel.h>

Detailed Description

template<typename T>
class itk::NumericTraits< DiffusionTensor3D< T > >

Define numeric traits for DiffusionTensor3D.

Template Parameters
TComponent type of DiffusionTensor3D

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

See also
NumericTraits

Definition at line 45 of file itkNumericTraitsDiffusionTensor3DPixel.h.

+ Collaboration diagram for itk::NumericTraits< DiffusionTensor3D< T > >:

Public Types

using AbsType = DiffusionTensor3D< ElementAbsType >
 
using AccumulateType = DiffusionTensor3D< ElementAccumulateType >
 
using FloatType = DiffusionTensor3D< ElementFloatType >
 
using MeasurementVectorType = Self
 
using PrintType = DiffusionTensor3D< ElementPrintType >
 
using RealType = DiffusionTensor3D< ElementRealType >
 
using ScalarRealType = ElementRealType
 
using Self = DiffusionTensor3D< T >
 
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 ()
 
static unsigned int GetLength (const DiffusionTensor3D< T > &)
 
static const Self max ()
 
static const Self max (const Self &)
 
static const Self min ()
 
static const Self min (const Self &)
 
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 (DiffusionTensor3D< T > &m, const unsigned int s)
 

Static Public Attributes

static constexpr bool IsComplex = NumericTraits<ValueType>::IsComplex
 
static constexpr bool IsInteger = std::is_integral_v<ValueType>
 
static constexpr bool IsSigned = std::is_signed_v<ValueType>
 
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

◆ AbsType

Unsigned component type

Definition at line 61 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ AccumulateType

Accumulation of addition and multiplication.

Definition at line 64 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ElementAbsType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ElementAbsType = typename NumericTraits<T>::AbsType
private

Definition at line 48 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ElementAccumulateType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ElementAccumulateType = typename NumericTraits<T>::AccumulateType
private

Definition at line 49 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ElementFloatType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ElementFloatType = typename NumericTraits<T>::FloatType
private

Definition at line 50 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ElementPrintType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ElementPrintType = typename NumericTraits<T>::PrintType
private

Definition at line 51 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ElementRealType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ElementRealType = typename NumericTraits<T>::RealType
private

Definition at line 52 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ FloatType

Typedef for operations that use floating point instead of real precision

Definition at line 68 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ MeasurementVectorType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::MeasurementVectorType = Self

Measurement vector type

Definition at line 80 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ PrintType

Return the type that can be printed.

Definition at line 71 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ RealType

Type for real-valued scalar operations.

Definition at line 74 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ScalarRealType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ScalarRealType = ElementRealType

Type for real-valued scalar operations.

Definition at line 77 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ Self

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::Self = DiffusionTensor3D<T>

Definition at line 58 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ValueType

template<typename T >
using itk::NumericTraits< DiffusionTensor3D< T > >::ValueType = T

Return the type of the native component type.

Definition at line 56 of file itkNumericTraitsDiffusionTensor3DPixel.h.

Member Function Documentation

◆ AssignToArray() [1/2]

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

Definition at line 182 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ AssignToArray() [2/2]

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

Definition at line 189 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ GetLength() [1/2]

template<typename T >
static unsigned int itk::NumericTraits< DiffusionTensor3D< T > >::GetLength ( )
inlinestatic

Return the size of the tensor. Always returns 6.

Definition at line 176 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ GetLength() [2/2]

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

Return the size of the tensor. Always returns 6.

Definition at line 169 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ max() [1/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::max ( )
inlinestatic

Definition at line 100 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ max() [2/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::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 itkNumericTraitsDiffusionTensor3DPixel.h.

◆ min() [1/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::min ( )
inlinestatic

Definition at line 106 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ min() [2/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::min ( const Self )
inlinestatic

Definition at line 94 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ NonpositiveMin() [1/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::NonpositiveMin ( )
inlinestatic

Definition at line 112 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ NonpositiveMin() [2/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::NonpositiveMin ( const Self )
inlinestatic

◆ OneValue() [1/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::OneValue ( )
inlinestatic

Definition at line 124 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ OneValue() [2/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::OneValue ( const Self )
inlinestatic

◆ SetLength()

template<typename T >
static void itk::NumericTraits< DiffusionTensor3D< T > >::SetLength ( DiffusionTensor3D< T > &  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. In this case, the only valid size is 6. If the size is valid the tensor will be filled with zeros.

Definition at line 156 of file itkNumericTraitsDiffusionTensor3DPixel.h.

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

◆ ZeroValue() [1/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::ZeroValue ( )
inlinestatic

Definition at line 118 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ ZeroValue() [2/2]

template<typename T >
static const Self itk::NumericTraits< DiffusionTensor3D< T > >::ZeroValue ( const Self )
inlinestatic

Member Data Documentation

◆ IsComplex

template<typename T >
constexpr bool itk::NumericTraits< DiffusionTensor3D< T > >::IsComplex = NumericTraits<ValueType>::IsComplex
staticconstexpr

Definition at line 149 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ IsInteger

template<typename T >
constexpr bool itk::NumericTraits< DiffusionTensor3D< T > >::IsInteger = std::is_integral_v<ValueType>
staticconstexpr

Definition at line 148 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ IsSigned

template<typename T >
constexpr bool itk::NumericTraits< DiffusionTensor3D< T > >::IsSigned = std::is_signed_v<ValueType>
staticconstexpr

Definition at line 147 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ One

template<typename T >
const Self ITKCommon_EXPORT itk::NumericTraits< DiffusionTensor3D< T > >::One
static

Definition at line 201 of file itkNumericTraitsDiffusionTensor3DPixel.h.

◆ Zero

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

Definition at line 200 of file itkNumericTraitsDiffusionTensor3DPixel.h.


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