Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

AxPipe::CThreadNoRun< T > Class Template Reference

Only used as a ThreadProc to get back into the class. Template to implement a pipe-section in a separate thread. More...

#include <CThread.h>

Inheritance diagram for AxPipe::CThreadNoRun< T >:

Inheritance graph
[legend]
Collaboration diagram for AxPipe::CThreadNoRun< T >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual ~CThreadNoRun ()
 Wait for the worker thread to terminate, then close handles etc.

void WorkStart ()
 Initiate one Work() cycle - called from outside worker thread.

void WorkSignal ()
 Signal that we've prepared for more Work() - called from outside worker thread.

void WorkWait ()
 Wait for more to be ready for Work() - this is called in the worker thread.

void WorkEnd ()
 End one Work() cycle - called from the worker thread.

virtual void WorkExitWait ()
 Wait for the Work()-thread, if any, to terminate.


Private Attributes

CThreadSync m_ThreadSync
 Implement worker thread synchronization.


Detailed Description

template<class T>
class AxPipe::CThreadNoRun< T >

Only used as a ThreadProc to get back into the class. Template to implement a pipe-section in a separate thread.

The basic thread mechanism revolves around a number of virtual functions that are overriden here, such as Work(). All synchronization etc is handled by the class, and the Work() function is called in it's own thread.

To enable threading use the appropriate CSource, CPipe or CSink derived class as the argument.

Parameters:
T A CSource, CPipe or CSink derived class to run in a separate thread.

Definition at line 134 of file CThread.h.


The documentation for this class was generated from the following file:
Generated on Mon Feb 2 13:19:29 2004 for AxPipe by doxygen 1.3.5