r623: no message
[ctsim.git] / src / threadraster.cpp
index 3b90791c4b2275bfd6c4910b103fdb5f97c540c6..fd03a65e906d8b04367e4ce2f34186a821a8f2ca 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2001 Kevin Rosenberg
 **
-**  $Id: threadraster.cpp,v 1.8 2001/03/04 22:30:20 kevin Exp $
+**  $Id: threadraster.cpp,v 1.13 2001/03/09 02:40:17 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
@@ -65,33 +65,29 @@ RasterizerSupervisorThread::RasterizerSupervisorThread (PhantomFileView* pProjVi
 wxThread::ExitCode
 RasterizerSupervisorThread::Entry()
 {
-  RasterizerSupervisor* pRasterSupervisor = new RasterizerSupervisor (this, m_pPhantomView, m_iNX, m_iNY, m_iNSample, m_dViewRatio, m_strLabel.c_str());
+  RasterizerSupervisor rasterSupervisor (this, m_pPhantomView, m_iNX, m_iNY, m_iNSample, m_dViewRatio, m_strLabel.c_str());
 
-  pRasterSupervisor->start();
+  rasterSupervisor.start();
 
-  while (! pRasterSupervisor->workersDone() && ! pRasterSupervisor->fail() && ! pRasterSupervisor->cancelled()) {
+  while (! rasterSupervisor.workersDone() && ! rasterSupervisor.fail() && ! rasterSupervisor.cancelled()) {
     Sleep(100);
   }
 
-  if (pRasterSupervisor->fail())
+  if (rasterSupervisor.fail())
   {
     wxString msg ("Error starting Rasterizer supervisor: ");
-    msg += pRasterSupervisor->getFailMessage().c_str();
+    msg += rasterSupervisor.getFailMessage().c_str();
     msg += "\n";
     wxCommandEvent eventLog (wxEVT_COMMAND_MENU_SELECTED, MAINMENU_LOG_EVENT );
     eventLog.SetString( msg );
     wxPostEvent( theApp->getMainFrame(), eventLog ); // send log event
   }
 
-  if (! pRasterSupervisor->cancelled())
-    pRasterSupervisor->onDone();
-  pRasterSupervisor->deleteWorkers();
-  while (! pRasterSupervisor->workersDeleted()) {
-    Sleep(50);
-  }
-  delete pRasterSupervisor;
+  if (! rasterSupervisor.cancelled())
+    rasterSupervisor.onDone();
+  rasterSupervisor.deleteWorkers();
 
-  return reinterpret_cast<wxThread::ExitCode>(0);
+    return static_cast<wxThread::ExitCode>(0);
 }
 
 void
@@ -212,8 +208,7 @@ RasterizerWorker::Entry ()
       break;
     }
     rPhantom.convertToImagefile (*m_pImageFile, m_iNX, m_dViewRatio, m_iNSample, Trace::TRACE_NONE, iUnit + m_iStartUnit, 1, iUnit);
-
-       m_pSupervisor->onWorkerUnitTick();
+         m_pSupervisor->onWorkerUnitTick();
   }
 
   m_pSupervisor->onWorkerDone (m_iThread);
@@ -221,7 +216,7 @@ RasterizerWorker::Entry ()
   while (! TestDestroy())
     Sleep(100);
 
-  return reinterpret_cast<wxThread::ExitCode>(0);
+  return static_cast<wxThread::ExitCode>(0);
 }
 
 void