31 #ifndef __itkAdvancedTransform_h
32 #define __itkAdvancedTransform_h
34 #include "itkTransform.h"
35 #include "itkMatrix.h"
36 #include "itkFixedArray.h"
79 template<
class TScalarType,
80 unsigned int NInputDimensions = 3,
81 unsigned int NOutputDimensions = 3 >
83 public Transform< TScalarType, NInputDimensions, NOutputDimensions >
89 typedef Transform< TScalarType,
113 typedef typename Superclass
115 typedef typename Superclass
126 typedef Transform< TScalarType,
143 InputSpaceDimension, InputSpaceDimension >,
152 itkGetConstMacro( HasNonZeroSpatialHessian,
bool );
153 itkGetConstMacro( HasNonZeroJacobianOfSpatialHessian,
bool );
182 const InputPointType & ipp,
184 NonZeroJacobianIndicesType & nonZeroJacobianIndices )
const = 0;
213 const InputPointType & ipp,
214 SpatialJacobianType & sj )
const = 0;
218 const InputPointType & itkNotUsed( p ), JacobianType & itkNotUsed( j ) )
const
220 itkExceptionMacro( <<
"This ITK4 function is currently not used in elastix." );
225 const InputPointType & itkNotUsed( p ), JacobianType & itkNotUsed( j ) )
const
227 itkExceptionMacro( <<
"This ITK4 function is currently not used in elastix." );
248 const InputPointType & ipp,
249 SpatialHessianType & sh )
const = 0;
258 const InputPointType & ipp,
259 JacobianOfSpatialJacobianType & jsj,
260 NonZeroJacobianIndicesType & nonZeroJacobianIndices )
const = 0;
266 const InputPointType & ipp,
267 SpatialJacobianType & sj,
268 JacobianOfSpatialJacobianType & jsj,
269 NonZeroJacobianIndicesType & nonZeroJacobianIndices )
const = 0;
278 const InputPointType & ipp,
279 JacobianOfSpatialHessianType & jsh,
280 NonZeroJacobianIndicesType & nonZeroJacobianIndices )
const = 0;
286 const InputPointType & ipp,
287 SpatialHessianType & sh,
288 JacobianOfSpatialHessianType & jsh,
289 NonZeroJacobianIndicesType & nonZeroJacobianIndices )
const = 0;
309 #ifndef ITK_MANUAL_INSTANTIATION
310 #include "itkAdvancedTransform.hxx"