** This is part of the CTSim program
** Copyright (C) 1983-2001 Kevin Rosenberg
**
-** $Id: backgroundsupr.h,v 1.4 2001/02/25 19:24:01 kevin Exp $
+** $Id: backgroundsupr.h,v 1.7 2001/03/04 03:14:47 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
private:
DECLARE_DYNAMIC_CLASS(BackgroundSupervisor)
- typedef std::vector<BackgroundWorkerThread*> ThreadContainer;
- ThreadContainer m_vecpThreads;
+ SupervisorThread* m_pMyThread;
wxFrame* m_pParentFrame;
wxDocument* m_pDocument;
const std::string m_strProcessTitle;
- wxProgressDialog* m_pDialogProgress;
-
+
volatile bool m_bFail;
std::string m_strFailMessage;
int m_iNumThreads;
Timer* m_pTimer;
bool m_bBackgroundTaskAdded;
bool m_bWorkersDeleted;
+
+ typedef std::vector<BackgroundWorkerThread*> ThreadContainer;
+ ThreadContainer m_vecpThreads;
wxCriticalSection m_critsectThreads;
-protected:
- SupervisorThread* m_MyThread;
public:
enum {
int iTotalUnits);
BackgroundSupervisor ()
- : m_iTotalUnits(0), wxEvtHandler()
+ : wxEvtHandler(), m_iTotalUnits(0)
{}
virtual ~BackgroundSupervisor();
class BackgroundWorkerThread : public wxThread {
protected:
BackgroundSupervisor* m_pSupervisor;
+ const int m_iThread;
const int m_iStartUnit;
const int m_iNumUnits;
- const int m_iThread;
public:
BackgroundWorkerThread (BackgroundSupervisor* pSupervisor, int iThread, int iStartUnit, int iNumUnits)
- : m_pSupervisor(pSupervisor), m_iThread(iThread), m_iStartUnit(iStartUnit), m_iNumUnits(iNumUnits),
- wxThread (wxTHREAD_DETACHED)
+ : wxThread (wxTHREAD_DETACHED), m_pSupervisor(pSupervisor), m_iThread(iThread), m_iStartUnit(iStartUnit), m_iNumUnits(iNumUnits)
{}
};