X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=registration%2FclitkBSplineDeformableTransform.h;h=392247f25717e80e6dede00e6e8167414af11b4a;hb=bfd2c4f867ddeaa1fdb556c44e58aabe467e64b5;hp=5a084c9d841c2a3ffec678936666c41d1f0d9772;hpb=573d80d0f7a17607d2ee883c21c940c0ba020282;p=clitk.git diff --git a/registration/clitkBSplineDeformableTransform.h b/registration/clitkBSplineDeformableTransform.h index 5a084c9..392247f 100644 --- a/registration/clitkBSplineDeformableTransform.h +++ b/registration/clitkBSplineDeformableTransform.h @@ -65,6 +65,9 @@ namespace clitk /** Standard parameters container. */ typedef typename Superclass::ParametersType ParametersType; +#if ITK_VERSION_MAJOR >= 4 + typedef typename Superclass::NumberOfParametersType NumberOfParametersType; +#endif /** Standard Jacobian container. */ typedef typename Superclass::JacobianType JacobianType; @@ -254,10 +257,22 @@ namespace clitk } /** Compute the Jacobian Matrix of the transformation at one point */ +#if ITK_VERSION_MAJOR >= 4 + virtual void ComputeJacobianWithRespectToParameters (const InputPointType &p, JacobianType &jacobian) const; + virtual void ComputeJacobianWithRespectToPosition (const InputPointType &p, JacobianType &jacobian) const + { + itkExceptionMacro( "ComputeJacobianWithRespectToPosition not yet implemented for " << this->GetNameOfClass() ); + } +#else virtual const JacobianType& GetJacobian(const InputPointType &point ) const; +#endif /** Return the number of parameters that completely define the Transfom */ +#if ITK_VERSION_MAJOR >= 4 + virtual NumberOfParametersType GetNumberOfParameters(void) const; +#else virtual unsigned int GetNumberOfParameters(void) const; +#endif /** Return the number of parameters per dimension */ unsigned int GetNumberOfParametersPerDimension(void) const; @@ -363,13 +378,16 @@ namespace clitk // VD Add MultipleBSplineDeformableTransform as friend to facilitate wrapping friend class MultipleBSplineDeformableTransform; +#if ITK_VERSION_MAJOR >= 4 + mutable JacobianType m_SharedDataBSplineJacobian; +#endif }; //class BSplineDeformableTransform } // namespace itk -#if ITK_TEMPLATE_TXX +#ifndef ITK_MANUAL_INSTANTIATION # include "clitkBSplineDeformableTransform.txx" #endif