]> Creatis software - clitk.git/blobdiff - registration/clitkShapedBLUTSpatioTemporalDeformableTransform.txx
Remove warnings
[clitk.git] / registration / clitkShapedBLUTSpatioTemporalDeformableTransform.txx
old mode 100755 (executable)
new mode 100644 (file)
index 5a4b950..a5db85a
@@ -32,7 +32,11 @@ namespace clitk
   // Constructor with default arguments
   template<class TCoordRep, unsigned int NInputDimensions, unsigned int NOutputDimensions>
   ShapedBLUTSpatioTemporalDeformableTransform<TCoordRep, NInputDimensions, NOutputDimensions>
+#if ITK_VERSION_MAJOR >= 4
+  ::ShapedBLUTSpatioTemporalDeformableTransform():Superclass(0)
+#else
   ::ShapedBLUTSpatioTemporalDeformableTransform():Superclass(OutputDimension,0)
+#endif
   {
     unsigned int i;
     
@@ -379,7 +383,11 @@ namespace clitk
 
   // Get the number of parameters
   template<class TCoordRep, unsigned int NInputDimensions, unsigned int NOutputDimensions>
+#if ITK_VERSION_MAJOR >= 4
+  typename ShapedBLUTSpatioTemporalDeformableTransform<TCoordRep, NInputDimensions, NOutputDimensions>::NumberOfParametersType
+#else
   unsigned int
+#endif
   ShapedBLUTSpatioTemporalDeformableTransform<TCoordRep, NInputDimensions, NOutputDimensions>
   ::GetNumberOfParameters(void) const
   {
@@ -802,11 +810,19 @@ namespace clitk
     //=====================================
     //JV Wrap jacobian into OutputDimension X Vectorial images
     //=====================================
+#if ITK_VERSION_MAJOR >= 4
+    this->m_SharedDataBSplineJacobian.set_size( OutputDimension, this->GetNumberOfParameters() );
+#else
     this->m_Jacobian.set_size( OutputDimension, this->GetNumberOfParameters() );
+#endif
 
     // Use memset to set the memory
     // JV four rows of three comps of parameters
+#if ITK_VERSION_MAJOR >= 4
+    JacobianPixelType * jacobianDataPointer = reinterpret_cast<JacobianPixelType *>(this->m_SharedDataBSplineJacobian.data_block());
+#else
     JacobianPixelType * jacobianDataPointer = reinterpret_cast<JacobianPixelType *>(this->m_Jacobian.data_block());
+#endif
     memset(jacobianDataPointer, 0,  OutputDimension*numberOfPixels*sizeof(JacobianPixelType));
 
     for (unsigned int j=0; j<OutputDimension; j++)
@@ -1037,13 +1053,11 @@ namespace clitk
     typedef itk::PasteImageFilter<CoefficientImageType, CoefficientImageType, CoefficientImageType> PasteImageFilterType;
     typedef clitk::ExtractImageFilter<CoefficientImageType, CoefficientImageType> ExtractImageFilterType;
     typedef clitk::LinearCombinationImageFilter<CoefficientImageType, CoefficientImageType> LinearCombinationFilterType;
-    typedef itk::MultiplyByConstantImageFilter<CoefficientImageType, double, CoefficientImageType> MultiplicationFilterType;
 
     // Regions
     typename   CoefficientImageType::RegionType sourceRegion=m_PaddedCoefficientImage->GetLargestPossibleRegion();
     typename   CoefficientImageType::RegionType destinationRegion=m_PaddedCoefficientImage->GetLargestPossibleRegion();
     typename   CoefficientImageType::RegionType::SizeType sourceSize=sourceRegion.GetSize();
-    typename   CoefficientImageType::RegionType::SizeType destinationSize=destinationRegion.GetSize();    
     typename   CoefficientImageType::IndexType sourceIndex=sourceRegion.GetIndex();
     typename   CoefficientImageType::IndexType destinationIndex=destinationRegion.GetIndex();
  
@@ -2376,11 +2390,17 @@ namespace clitk
   // JV weights are identical as for transformpoint, could be done simultaneously in metric!!!!
   // Compute the Jacobian in one position 
   template<class TCoordRep, unsigned int NInputDimensions, unsigned int NOutputDimensions>
+#if ITK_VERSION_MAJOR >= 4
+  void
+  ShapedBLUTSpatioTemporalDeformableTransform<TCoordRep, NInputDimensions, NOutputDimensions>
+  ::ComputeJacobianWithRespectToParameters( const InputPointType & point, JacobianType & jacobian) const
+#else
   const 
   typename ShapedBLUTSpatioTemporalDeformableTransform<TCoordRep, NInputDimensions, NOutputDimensions>
   ::JacobianType & 
   ShapedBLUTSpatioTemporalDeformableTransform<TCoordRep, NInputDimensions, NOutputDimensions>
   ::GetJacobian( const InputPointType & point ) const
+#endif
   {
   
     //========================================================
@@ -2476,7 +2496,12 @@ namespace clitk
     if(m_Mask &&  !(m_Mask->IsInside(point) ) )
       {
        // Outside: no (deformable) displacement
+#if ITK_VERSION_MAJOR >= 4
+        jacobian = m_SharedDataBSplineJacobian;
+        return;
+#else
        return this->m_Jacobian;
+#endif
       }        
 
     // Get index   
@@ -2486,7 +2511,12 @@ namespace clitk
     // we assume zero displacement and return the input point
     if ( !this->InsideValidRegion( m_Index ) )
       {
+#if ITK_VERSION_MAJOR >= 4
+        jacobian = m_SharedDataBSplineJacobian;
+        return;
+#else
        return this->m_Jacobian;
+#endif
       }
 
     // Compute interpolation weights
@@ -2654,7 +2684,11 @@ namespace clitk
       }
 
     // Return the result
+#if ITK_VERSION_MAJOR >= 4
+    jacobian = m_SharedDataBSplineJacobian;
+#else
     return this->m_Jacobian;
+#endif
   }