projects
/
ctsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r589: Added threaded rasterizer
[ctsim.git]
/
src
/
backgroundsupr.h
diff --git
a/src/backgroundsupr.h
b/src/backgroundsupr.h
index 9058c597f6efb1bf8bcbc5d6171e6f2e98683b89..b77b99700ced312fcd467bf3a44eac23dd6c7837 100644
(file)
--- a/
src/backgroundsupr.h
+++ b/
src/backgroundsupr.h
@@
-9,7
+9,7
@@
** This is part of the CTSim program
** Copyright (C) 1983-2001 Kevin Rosenberg
**
** This is part of the CTSim program
** Copyright (C) 1983-2001 Kevin Rosenberg
**
-** $Id: backgroundsupr.h,v 1.
2 2001/02/25 08:00:57
kevin Exp $
+** $Id: backgroundsupr.h,v 1.
5 2001/02/26 17:36:56
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
**
** 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
@@
-53,9
+53,8
@@
class BackgroundWorkerThread;
class BackgroundSupervisor : public wxEvtHandler {
private:
DECLARE_DYNAMIC_CLASS(BackgroundSupervisor)
class BackgroundSupervisor : public wxEvtHandler {
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;
wxFrame* m_pParentFrame;
wxDocument* m_pDocument;
const std::string m_strProcessTitle;
@@
-71,6
+70,12
@@
private:
bool m_bDone;
Timer* m_pTimer;
bool m_bBackgroundTaskAdded;
bool m_bDone;
Timer* m_pTimer;
bool m_bBackgroundTaskAdded;
+ bool m_bWorkersDeleted;
+
+ typedef std::vector<BackgroundWorkerThread*> ThreadContainer;
+ ThreadContainer m_vecpThreads;
+ wxCriticalSection m_critsectThreads;
+
public:
enum {
public:
enum {
@@
-85,7
+90,7
@@
public:
MSG_WORKER_THREAD_FAIL = 7507, // sent by workers when they fail
};
MSG_WORKER_THREAD_FAIL = 7507, // sent by workers when they fail
};
- BackgroundSupervisor (wxFrame* pParentFrame, wxDocument* pDocument, const char* const pszProcessTitle,
+ BackgroundSupervisor (
SupervisorThread* pMyThread,
wxFrame* pParentFrame, wxDocument* pDocument, const char* const pszProcessTitle,
int iTotalUnits);
BackgroundSupervisor ()
int iTotalUnits);
BackgroundSupervisor ()
@@
-106,7
+111,8
@@
public:
virtual void OnCancel(wxCommandEvent& event);
virtual void OnAckDocumentRemove(wxCommandEvent& event);
virtual void OnCancel(wxCommandEvent& event);
virtual void OnAckDocumentRemove(wxCommandEvent& event);
- bool anyWorkersRunning() const { return m_iRunning > 0 ? true : false; }
+ void deleteWorkers();
+ bool workersDeleted() const { return m_bWorkersDeleted; }
bool isDone() const {return m_bDone;}
void setDone() { m_bDone = true; }
bool fail() const {return m_bFail;}
bool isDone() const {return m_bDone;}
void setDone() { m_bDone = true; }
bool fail() const {return m_bFail;}
@@
-135,4
+141,4
@@
public:
{}
};
{}
};
-#endif // _BACKGROUNDSUPR_H_
\ No newline at end of file
+#endif // _BACKGROUNDSUPR_H_