]> Creatis software - clitk.git/blobdiff - registration/itkOptMeanSquaresImageToImageMetricFor3DBLUTFFD.txx
Ensure compatibility with ITK5
[clitk.git] / registration / itkOptMeanSquaresImageToImageMetricFor3DBLUTFFD.txx
index dd7000ddec171559063f684d1218d9014cdeddd4..39cfa8ea688374fcf04cdc7cd3baf08b35f10499 100644 (file)
@@ -109,13 +109,22 @@ MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
   if(m_ThreaderMSE != NULL) {
     delete [] m_ThreaderMSE;
   }
+#if ITK_VERSION_MAJOR <= 4
   m_ThreaderMSE = new double[this->m_NumberOfThreads];
+#else
+  m_ThreaderMSE = new double[this->m_NumberOfWorkUnits];
+#endif
 
   if(m_ThreaderMSEDerivatives != NULL) {
     delete [] m_ThreaderMSEDerivatives;
   }
+#if ITK_VERSION_MAJOR <= 4
   m_ThreaderMSEDerivatives = new DerivativeType[this->m_NumberOfThreads];
   for(unsigned int threadID=0; threadID<this->m_NumberOfThreads; threadID++) {
+#else
+  m_ThreaderMSEDerivatives = new DerivativeType[this->m_NumberOfWorkUnits];
+  for(unsigned int threadID=0; threadID<this->m_NumberOfWorkUnits; threadID++) {
+#endif
     m_ThreaderMSEDerivatives[threadID].SetSize( this->m_NumberOfParameters );
   }
 }
@@ -147,9 +156,11 @@ MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
     itkExceptionMacro( << "Fixed image has not been assigned" );
   }
 
-  memset( m_ThreaderMSE,
-          0,
-          this->m_NumberOfThreads * sizeof(MeasureType) );
+#if ITK_VERSION_MAJOR <= 4
+  memset( m_ThreaderMSE, 0, this->m_NumberOfThreads * sizeof(MeasureType) );
+#else
+  memset( m_ThreaderMSE, 0, this->m_NumberOfWorkUnits * sizeof(MeasureType) );
+#endif
 
   // Set up the parameters in the transform
   this->m_Transform->SetParameters( parameters );
@@ -171,7 +182,11 @@ MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
   }
 
   double mse = m_ThreaderMSE[0];
+#if ITK_VERSION_MAJOR <= 4
   for(unsigned int t=1; t<this->m_NumberOfThreads; t++) {
+#else
+  for(unsigned int t=1; t<this->m_NumberOfWorkUnits; t++) {
+#endif
     mse += m_ThreaderMSE[t];
   }
   mse /= this->m_NumberOfPixelsCounted;
@@ -252,9 +267,11 @@ MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
   this->m_Transform->SetParameters( parameters );
 
   // Reset the joint pdfs to zero
-  memset( m_ThreaderMSE,
-          0,
-          this->m_NumberOfThreads * sizeof(MeasureType) );
+#if ITK_VERSION_MAJOR <= 4
+  memset( m_ThreaderMSE, 0, this->m_NumberOfThreads * sizeof(MeasureType) );
+#else
+  memset( m_ThreaderMSE, 0, this->m_NumberOfWorkUnits * sizeof(MeasureType) );
+#endif
 
   // Set output values to zero
   if(derivative.GetSize() != this->m_NumberOfParameters) {
@@ -264,7 +281,11 @@ MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
           0,
           this->m_NumberOfParameters * sizeof(double) );
 
+#if ITK_VERSION_MAJOR <= 4
   for( unsigned int threadID = 0; threadID<this->m_NumberOfThreads; threadID++ ) {
+#else
+  for( unsigned int threadID = 0; threadID<this->m_NumberOfWorkUnits; threadID++ ) {
+#endif
     memset( m_ThreaderMSEDerivatives[threadID].data_block(),
             0,
             this->m_NumberOfParameters * sizeof(double) );
@@ -287,7 +308,11 @@ MeanSquaresImageToImageMetricFor3DBLUTFFD<TFixedImage,TMovingImage>
   }
 
   value = 0;
+#if ITK_VERSION_MAJOR <= 4
   for(unsigned int t=0; t<this->m_NumberOfThreads; t++) {
+#else
+  for(unsigned int t=0; t<this->m_NumberOfWorkUnits; t++) {
+#endif
     value += m_ThreaderMSE[t];
     for(unsigned int parameter = 0; parameter < this->m_NumberOfParameters;
         parameter++) {