r617: *** empty log message ***
[ctsim.git] / src / threadrecon.cpp
index 0ec059bbcb2293be950c8731d8b29878deafe068..519fcb0e0194bcd6e30376bdf5c8094362a6f1e0 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2001 Kevin Rosenberg
 **
-**  $Id: threadrecon.cpp,v 1.20 2001/03/04 22:30:20 kevin Exp $
+**  $Id: threadrecon.cpp,v 1.22 2001/03/07 21:18:50 kevin Exp $
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
@@ -86,11 +86,7 @@ ReconstructorSupervisorThread::Entry()
          reconSupervisor.onDone();
   reconSupervisor.deleteWorkers();
 
-  while (! reconSupervisor.workersDeleted()) {
-    Sleep(50);
-  }
-
-  return reinterpret_cast<wxThread::ExitCode>(0);
+  return static_cast<wxThread::ExitCode>(0);
 }
 
 void
@@ -109,12 +105,12 @@ ReconstructorSupervisor::ReconstructorSupervisor (SupervisorThread* pThread, Pro
   int iImageNX, int iImageNY, const char* pszFilterName, double dFilterParam, const char* pszFilterMethod, 
   int iZeropad, const char* pszFilterGenerationName, const char* pszInterpName, int iInterpParam,
   const char* pszBackprojectName, const char* const pszLabel)
-    : m_pProjView(pProjView), m_pProjDoc(pProjView->GetDocument()), 
+    : BackgroundSupervisor (pThread, pProjView->GetFrame(), pProjView->GetDocument(), "Reconstructing", pProjView->GetDocument()->getProjections().nView()),
+      m_pProjView(pProjView), m_pProjDoc(pProjView->GetDocument()), 
       m_iImageNX(iImageNX), m_iImageNY(iImageNY), 
       m_pszFilterName(pszFilterName), m_dFilterParam(dFilterParam), m_pszFilterMethod(pszFilterMethod),
       m_iZeropad(iZeropad), m_pszFilterGenerationName(pszFilterGenerationName), m_pszInterpName(pszInterpName),
-      m_iInterpParam(iInterpParam), m_pszBackprojectName(pszBackprojectName), m_pszLabel(pszLabel), 
-      BackgroundSupervisor (pThread, pProjView->GetFrame(), pProjView->GetDocument(), "Reconstructing", pProjView->GetDocument()->getProjections().nView())
+      m_iInterpParam(iInterpParam), m_pszBackprojectName(pszBackprojectName), m_pszLabel(pszLabel) 
 {
   m_vecpChildImageFile.reserve (getNumWorkers());
   for (int iThread = 0; iThread < getNumWorkers(); iThread++) {