}
// Jacobian should be evaluated at the unmapped (fixed image) point.
+#if ITK_VERSION_MAJOR >= 4
+ TransformJacobianType jacobian;
+ transform->ComputeJacobianWithRespectToParameters(fixedImagePoint, jacobian);
+#else
const TransformJacobianType & jacobian = transform
->GetJacobian( fixedImagePoint );
+#endif
for(unsigned int par=0; par<this->m_NumberOfParameters; par++) {
RealType sumF = itk::NumericTraits< RealType >::Zero;
}
memset( derivative.data_block(),
0,
- this->m_NumberOfParameters * sizeof(ITK_TYPENAME DerivativeType::ValueType) );
+ this->m_NumberOfParameters * sizeof(typename DerivativeType::ValueType) );
for( unsigned int threadID = 0; threadID<this->m_NumberOfThreads; threadID++ ) {
memset( m_ThreaderDerivativeF[threadID].data_block(),
0,
- this->m_NumberOfParameters * sizeof(ITK_TYPENAME DerivativeType::ValueType) );
+ this->m_NumberOfParameters * sizeof(typename DerivativeType::ValueType) );
memset( m_ThreaderDerivativeM[threadID].data_block(),
0,
- this->m_NumberOfParameters * sizeof(ITK_TYPENAME DerivativeType::ValueType) );
+ this->m_NumberOfParameters * sizeof(typename DerivativeType::ValueType) );
}
// MUST BE CALLED TO INITIATE PROCESSING