Public Member Functions

zeus::IThreadManager Class Reference

#include <IThreadManager.hpp>

Inheritance diagram for zeus::IThreadManager:
zeus::IZUnknown zeus::TThreadManager

List of all members.

Public Member Functions

virtual void MQUALIFIER addThread (Uint uiID, IThreadMessageQueue &rQueue, bool bInterrupted)=0
virtual Uint MQUALIFIER getCurrentThreadID () const =0
virtual Retval MQUALIFIER getMessageQueue (Uint uiThreadID, IThreadMessageQueue *&rpQueue)=0
virtual bool MQUALIFIER isThreadInterrupted (Uint uiID) const =0
virtual void MQUALIFIER removeThread (Uint uiID)=0
virtual void MQUALIFIER setThreadState (Uint uiID, bool bInterrupted)=0
virtual Uint MQUALIFIER getMainThreadID () const =0
virtual Retval MQUALIFIER postObject (Uint uiThreadID, ISynchronizeObject &rObject, bool bWaitForCompletion)=0
virtual Retval MQUALIFIER postObjectToMainThread (ISynchronizeObject &rObject, bool bWaitForCompletion)=0
virtual bool MQUALIFIER isCurrentThread (Uint uiThreadID) const =0
virtual bool MQUALIFIER isCurrentMainThread () const =0

Detailed Description

This interface defines the methods of the thread manager


Member Function Documentation

virtual void MQUALIFIER zeus::IThreadManager::addThread ( Uint  uiID,
IThreadMessageQueue rQueue,
bool  bInterrupted 
) [pure virtual]

adds a thread to the manager and registers the thread message queue

Parameters:
uiID: Thread ID
rQueue: Thread message queue
bInterrupted: interrupted flag

Implemented in zeus::TThreadManager.

virtual Uint MQUALIFIER zeus::IThreadManager::getCurrentThreadID (  ) const [pure virtual]

Returns the current thread ID (calling thread)

Returns:
Thread ID

Implemented in zeus::TThreadManager.

virtual Uint MQUALIFIER zeus::IThreadManager::getMainThreadID (  ) const [pure virtual]

Returns the ID of the main thread

Implemented in zeus::TThreadManager.

virtual Retval MQUALIFIER zeus::IThreadManager::getMessageQueue ( Uint  uiThreadID,
IThreadMessageQueue *&  rpQueue 
) [pure virtual]

Returns the thread message queue

Parameters:
uiThreadID: ID of the queue owner thread
rpQueue: Return parameter
Return values:
RET_NOERROR: Queue returned
RET_REQUEST_FAILED: Could not find a queue

Implemented in zeus::TThreadManager.

virtual bool MQUALIFIER zeus::IThreadManager::isCurrentMainThread (  ) const [pure virtual]

Checks if the current thread is the main thread

Implemented in zeus::TThreadManager.

virtual bool MQUALIFIER zeus::IThreadManager::isCurrentThread ( Uint  uiThreadID ) const [pure virtual]

Checks if the current thread is the thread with ID uiThreadID.

Implemented in zeus::TThreadManager.

virtual bool MQUALIFIER zeus::IThreadManager::isThreadInterrupted ( Uint  uiID ) const [pure virtual]

Checks if a thread is interrupted

Parameters:
uiID: Thread ID
Return values:
true: Thread is interrupted
false,:Thread is running

Implemented in zeus::TThreadManager.

virtual Retval MQUALIFIER zeus::IThreadManager::postObject ( Uint  uiThreadID,
ISynchronizeObject rObject,
bool  bWaitForCompletion 
) [pure virtual]

posts an object to a thread message queue

Parameters:
uiThreadID: ID of the queue
rObject: Object to post
bWaitForCompletion: flag if the calling thread must wait for process completion

Implemented in zeus::TThreadManager.

virtual Retval MQUALIFIER zeus::IThreadManager::postObjectToMainThread ( ISynchronizeObject rObject,
bool  bWaitForCompletion 
) [pure virtual]

posts an object to the main thread message queue

Parameters:
rObject: Object to post
bWaitForCompletion: flag if the calling thread must wait for process completion

Implemented in zeus::TThreadManager.

virtual void MQUALIFIER zeus::IThreadManager::removeThread ( Uint  uiID ) [pure virtual]

Removes a thread from the list

Parameters:
uiID: Thread ID

Implemented in zeus::TThreadManager.

virtual void MQUALIFIER zeus::IThreadManager::setThreadState ( Uint  uiID,
bool  bInterrupted 
) [pure virtual]

Sets a new thread state

Parameters:
uiID: Thread ID
bInterrupted: interrupted flag

Implemented in zeus::TThreadManager.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Sun Jan 22 2012 15:28:36