MyThread Class Reference

#include <wxReadingPriorityPanel.h>

Collaboration diagram for MyThread:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 MyThread (PriorityLoop *priorityLoop, AdminThreadEED *adminThreadEED)
virtual void * Entry ()
virtual void OnExit ()

Private Attributes

PriorityLoop_priorityLoop
AdminThreadEED_adminThreadEED

Detailed Description

Definition at line 200 of file wxReadingPriorityPanel.h.


Constructor & Destructor Documentation

MyThread::MyThread ( PriorityLoop priorityLoop,
AdminThreadEED adminThreadEED 
)

Definition at line 624 of file wxReadingPriorityPanel.cpp.

References _adminThreadEED, and _priorityLoop.

00624                                                                            {
00625    _priorityLoop        =       priorityLoop;
00626    _adminThreadEED      =       adminThreadEED;
00627 
00628 }


Member Function Documentation

void * MyThread::Entry (  )  [virtual]

Definition at line 647 of file wxReadingPriorityPanel.cpp.

References _priorityLoop, PriorityLoop::InitLoop(), PriorityLoop::IsLoop(), and PriorityLoop::Iteration().

00647                      {
00648         _priorityLoop->InitLoop();
00649         while ( _priorityLoop->IsLoop()==true ){
00650         if ( TestDestroy() ){
00651             break;
00652                 }
00653                 _priorityLoop->Iteration();
00654     }
00655     return NULL;
00656 }

Here is the call graph for this function:

void MyThread::OnExit (  )  [virtual]

Definition at line 631 of file wxReadingPriorityPanel.cpp.

References _adminThreadEED, _priorityLoop, AdminThreadEED::m_condAllDone, AdminThreadEED::m_critsect, AdminThreadEED::m_mutexAllDone, AdminThreadEED::m_threads, AdminThreadEED::m_waitingUntilAllDone, and PriorityLoop::StopLoop().

00631                      {
00632     _priorityLoop->StopLoop();
00633     wxCriticalSectionLocker locker(_adminThreadEED->m_critsect);
00634     wxArrayThread& threads = _adminThreadEED->m_threads;
00635     threads.Remove(this);
00636 
00637     if ( threads.IsEmpty() )    {
00638         if ( _adminThreadEED->m_waitingUntilAllDone ){
00639             _adminThreadEED->m_waitingUntilAllDone = FALSE;
00640             wxMutexLocker lock(_adminThreadEED->m_mutexAllDone);
00641             _adminThreadEED->m_condAllDone.Signal();
00642         }
00643     }
00644 }

Here is the call graph for this function:


Member Data Documentation

Definition at line 207 of file wxReadingPriorityPanel.h.

Referenced by MyThread(), and OnExit().

Definition at line 206 of file wxReadingPriorityPanel.h.

Referenced by Entry(), MyThread(), and OnExit().


The documentation for this class was generated from the following files:

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1