ZeusBase-Library  2.0.4
zeus::TConsoleMainThread Class Reference

#include <ConsoleMainThread.h>

Inheritance diagram for zeus::TConsoleMainThread:
zeus::TAbstractMainThread zeus::TZObject zeus::IThread zeus::IZUnknown zeus::IZUnknown

Public Member Functions

void initControlHandler ()
 
void setTimeSlice (const Float &rfDwellTime)
 
void start ()
 
- Public Member Functions inherited from zeus::TAbstractMainThread
virtual bool MQUALIFIER isInterrupted () const
 
virtual Uint MQUALIFIER getThreadID () const
 
virtual Retval processObject ()
 
virtual void registerThread (TThreadManager &rManager, bool bUseInternalDispatcher)
 
virtual void unregisterThread (TThreadManager &rManager)
 
- Public Member Functions inherited from zeus::TZObject
 TZObject ()
 
 TZObject (const TString &strName)
 
 TZObject (const IString &strName)
 
Uint getHash () const
 
TString toString () const
 
virtual TString getObjName () const
 
virtual void setObjName (const TString &name)
 

Static Public Member Functions

static TConsoleMainThreadgetInstance ()
 
static void terminate ()
 
static bool isTerminated ()
 

Protected Member Functions

 TConsoleMainThread ()
 
virtual ~TConsoleMainThread ()
 
- Protected Member Functions inherited from zeus::TAbstractMainThread
 TAbstractMainThread ()
 
 TAbstractMainThread (TThreadMessageQueue &rQueue, bool bAdoptPointer)
 
virtual ~TAbstractMainThread ()
 
virtual Retval MQUALIFIER askForInterface (const InterfaceID &rInterfaceID, IZUnknown *&rpIface)
 
virtual void MQUALIFIER addRef () const
 
virtual void MQUALIFIER release () const
 
- Protected Member Functions inherited from zeus::TZObject
virtual ~TZObject ()
 
 TZObject (const TZObject &rObject)
 
TZObjectoperator= (const TZObject &rObject)
 
Int getRefCounter () const
 

Static Protected Member Functions

static BOOL __stdcall breakRoutine (DWORD dwCtrlType)
 

Static Protected Attributes

static TConsoleMainThread m_Instance
 Static singleton object. More...
 
- Static Protected Attributes inherited from zeus::TAbstractMainThread
static bool m_bInterrupted = false
 Interrupted flag. More...
 

Additional Inherited Members

- Protected Attributes inherited from zeus::TAbstractMainThread
TCriticalSectionm_rLock
 internal lock More...
 
bool m_bUseInternalDispatcher
 Flag if queue messages are dispached internally. More...
 
TThreadMessageQueuem_rQueue
 Message queue of the thread. More...
 
- Protected Attributes inherited from zeus::TZObject
Uint m_uiID
 

Detailed Description

The class wraps the main thread of a console application. It includes the runtime environment and controller object

Constructor & Destructor Documentation

§ TConsoleMainThread()

TConsoleMainThread::TConsoleMainThread ( )
protected

Creates an new console main thread object

§ ~TConsoleMainThread()

TConsoleMainThread::~TConsoleMainThread ( )
protectedvirtual

Destroys the thread object

Member Function Documentation

§ breakRoutine()

static BOOL __stdcall zeus::TConsoleMainThread::breakRoutine ( DWORD  dwCtrlType)
staticprotected

§ getInstance()

static TConsoleMainThread& zeus::TConsoleMainThread::getInstance ( )
inlinestatic

returns the instance of the console main thread

§ initControlHandler()

void TConsoleMainThread::initControlHandler ( )

Initialises all handlers

§ isTerminated()

bool TConsoleMainThread::isTerminated ( )
static

Checks if the application has been terminated

Return values
true: terminated
falsenot terminated

§ setTimeSlice()

void zeus::TConsoleMainThread::setTimeSlice ( const Float &  rfDwellTime)
inline

sets the dwell time while looping in the main thread

§ start()

void TConsoleMainThread::start ( )

Starts the application and keeps it running, until Control + C is pressed

§ terminate()

void TConsoleMainThread::terminate ( )
static

Terminates the application

Member Data Documentation

§ m_Instance

TConsoleMainThread TConsoleMainThread::m_Instance
staticprotected

Static singleton object.

Initialises the static object.


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


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Tue Sep 13 2016 22:31:54