Skip to content

Commit

Permalink
Fix export of speed image
Browse files Browse the repository at this point in the history
The IsLinear flag in ImageWrapper::CreateCastTo*Pipeline was always
false since LinearInternalToNativeIntensityMapping can never be the base
class of NativeIntensityMapping. Changing positions of base and derived
class in std::is_base_of will fix this.
  • Loading branch information
a-a-danilov committed Feb 14, 2024
1 parent b534d30 commit a8d190c
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions Logic/ImageWrapper/ImageWrapper.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -3074,7 +3074,7 @@ typename ImageWrapper<TTraits>::FloatImageType *
ImageWrapper<TTraits>
::CreateCastToFloatPipeline(const char *key, int index)
{
typedef typename std::is_base_of<NativeIntensityMapping, LinearInternalToNativeIntensityMapping> IsLinear;
typedef typename std::is_base_of<LinearInternalToNativeIntensityMapping, NativeIntensityMapping> IsLinear;
typedef typename std::is_base_of<itk::VectorImage<ComponentType, 3>, ImageType> IsVector;

typedef CreateCastToTargetTypePipelinePartialSpecializationTraits<
Expand All @@ -3093,7 +3093,7 @@ typename ImageWrapper<TTraits>::FloatVectorImageType *
ImageWrapper<TTraits>
::CreateCastToFloatVectorPipeline(const char *key, int index)
{
typedef typename std::is_base_of<NativeIntensityMapping, LinearInternalToNativeIntensityMapping> IsLinear;
typedef typename std::is_base_of<LinearInternalToNativeIntensityMapping, NativeIntensityMapping> IsLinear;

// Create a pipeline that maps us to the matching image
typedef CreateCastToTargetTypePipelinePartialSpecializationTraits<
Expand All @@ -3113,7 +3113,7 @@ template<class TTraits>
typename ImageWrapper<TTraits>::FloatSliceType *
ImageWrapper<TTraits>::CreateCastToFloatSlicePipeline(const char *key, unsigned int slice)
{
typedef typename std::is_base_of<NativeIntensityMapping, LinearInternalToNativeIntensityMapping> IsLinear;
typedef typename std::is_base_of<LinearInternalToNativeIntensityMapping, NativeIntensityMapping> IsLinear;

typedef CreateCastToTargetTypePipelinePartialSpecializationTraits<
SliceType, FloatSliceType, NativeIntensityMapping, IsLinear::value, !IsVector::value> Specialization;
Expand All @@ -3130,7 +3130,7 @@ template<class TTraits>
typename ImageWrapper<TTraits>::FloatVectorSliceType *
ImageWrapper<TTraits>::CreateCastToFloatVectorSlicePipeline(const char *key, unsigned int slice)
{
typedef typename std::is_base_of<NativeIntensityMapping, LinearInternalToNativeIntensityMapping> IsLinear;
typedef typename std::is_base_of<LinearInternalToNativeIntensityMapping, NativeIntensityMapping> IsLinear;
typedef typename std::is_base_of<itk::VectorImage<ComponentType, 3>, ImageType> IsVector;

typedef CreateCastToTargetTypePipelinePartialSpecializationTraits<
Expand Down

0 comments on commit a8d190c

Please sign in to comment.