]> Creatis software - creaImageIO.git/commitdiff
*** empty log message ***
authorFrederic Cervenansky <Frederic.Cervenansky@creatis.insa-lyon.fr>
Wed, 9 Dec 2009 14:35:39 +0000 (14:35 +0000)
committerFrederic Cervenansky <Frederic.Cervenansky@creatis.insa-lyon.fr>
Wed, 9 Dec 2009 14:35:39 +0000 (14:35 +0000)
src2/creaImageIOGimmick.cpp
src2/creaImageIOMultiThreadImageReader.cpp
src2/creaImageIOMultiThreadImageReader.h
src2/creaImageIOWxViewer.cpp

index 04e8c689f0c40c5397be670448cdb5113a29ea20..615f1f041f90b50a41886121d516a11c8df72dea 100644 (file)
@@ -8,7 +8,10 @@
 #ifndef PATH_MAX // If not defined yet : do it 
 #  define PATH_MAX 2048
 #endif
-
+#include <creaImageIOGimmick.h>
+#ifdef _DEBUG
+#define new DEBUG_NEW
+#endif
 
 
 namespace creaImageIO
@@ -29,6 +32,7 @@ namespace creaImageIO
   //==============================================================
   Gimmick::~Gimmick()
   {
+
         if(mSettings!=0)
          {
                mSettings->writeSettingsFile();
index 5871d8044774da930d67e3d9d033d8cb75bdd175..1b96fc94b1d2552f1865c081ab59500a6834358f 100644 (file)
@@ -3,7 +3,10 @@
 #include <wx/utils.h>
 #include <creaImageIOSystem.h>
 
-
+#include <creaImageIOGimmick.h>
+#ifdef _DEBUG
+#define new DEBUG_NEW
+#endif
 namespace creaImageIO
 {
 
@@ -61,6 +64,7 @@ namespace creaImageIO
     //    std::cout << "#### MultiThreadImageReader::MultiThreadImageReader("
     //       << " #threads= " << number_of_threads <<" )"<<std::endl;
 
+         mDone = false;
     // Create the threads
     for (int i=0; i<number_of_threads; i++) 
       {
@@ -124,6 +128,7 @@ namespace creaImageIO
 //                 std::cout << "#### MultiThreadImageReader::Stop()"
 //           <<std::endl;
   //  std::cout << "Sending stop order to the threads..."<<std::endl;
+         if (mDone) return;
 
     ThreadedImageReaderListType::iterator i;
     for (i =mThreadedImageReaderList.begin();
@@ -172,6 +177,7 @@ namespace creaImageIO
        delete j->first;
       }
     mImages.clear();
+       mDone = true;
   }
   //=====================================================================
 
index ac1817783a5bf5ee97a002e4a68d138f3c3bb1c8..c5a9ef9574081937cf4849933c0eed44409a62da 100644 (file)
@@ -9,6 +9,8 @@
 #include <wx/thread.h>
 #include <queue>
 
+
+
 namespace creaImageIO
 {
        /**
@@ -105,6 +107,7 @@ namespace creaImageIO
                                        vtkImageData* image);
     
   protected:
+         bool mDone;
     int GetMaximalPriorityWithoutLocking();
     ///Class that represents an image to be loaded
     class ImageToLoad
index 2ee0ad589d08d773c687233721e2c7b69eb930fe..aaa6cf25c890daff64cb58d4e056950c52ceb47b 100644 (file)
@@ -12,7 +12,7 @@
 
 
 using namespace crea;
-// Memory tracking allocation
+
 namespace creaImageIO
 {
   
@@ -109,7 +109,6 @@ namespace creaImageIO
        delete mInteractor;
        //delete mslide;
        //delete mflexSizer;
-       //delete mtopSizer;
   }
   //=====================================================================