From 45cb41901d395f4fabea6ef9c98c652a7b05f10d Mon Sep 17 00:00:00 2001
From: Cyrille Valladeau <cyrille.valladeau@c-s.fr>
Date: Wed, 30 Apr 2008 08:00:57 +0000
Subject: [PATCH] nomsg

---
 Code/Markov/otbMRFOptimizer.h | 27 ++++++++++++++++++---------
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/Code/Markov/otbMRFOptimizer.h b/Code/Markov/otbMRFOptimizer.h
index 35411a505c..0471fce984 100644
--- a/Code/Markov/otbMRFOptimizer.h
+++ b/Code/Markov/otbMRFOptimizer.h
@@ -20,6 +20,7 @@
 
 #include "itkObject.h"
 #include "itkObjectFactory.h"
+#include "itkArray.h"
 
 namespace otb
 {
@@ -52,19 +53,27 @@ class ITK_EXPORT MRFOptimizer : public itk::Object
     
     void SetParameters( const ParametersType & parameters )
     {
-      bool modified = false;
-      for( unsigned int i=0; i<m_NumberOfParameters; i++ )
-      {
+      if( parameters.Size() != m_NumberOfParameters )
+	{	
+	  itkExceptionMacro(<<"Invalid number of parameters");
+	}
+      m_Parameters = parameters;
+      this->Modified();
+      /*
+	bool modified = false;
+	for( unsigned int i=0; i<m_NumberOfParameters; i++ )
+	{
         if (m_Parameters[i] != parameters[i])
         {
-          m_Parameters[i] = parameters[i];
-          modified = true;
+	m_Parameters[i] = parameters[i];
+	modified = true;
         }
-      }
-      if (modified)
-      {
+	}
+	if (modified)
+	{
         this->Modified();
-      }
+	}
+      */
     }
     
     virtual bool Compute(double deltaEnergy)
-- 
GitLab