Clarisse 4.0 SP9 SDK  4.0.0.0.9
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Friends | List of all members
SysThreadTask Class Referenceabstract
Inheritance diagram for SysThreadTask:
CoreBaseObject CoreBaseType Sample2DLutTask SysThreadTaskGeneric

Public Member Functions

SysThreadTaskManagerget_task_manager () const
 
const bool & is_auto_deleted () const
 
const bool & is_preemptible () const
 
void set_auto_delete (const bool &auto_delete)
 
- Public Member Functions inherited from CoreBaseObject
bool is_kindof (const CoreBaseObject &object) const
 
virtual size_t get_memory_size () const
 
CoreString get_class_info_name () const
 
CoreString get_class_interface () const
 
const unsigned long & get_class_info_id () const
 
bool is_kindof (const CoreClassInfo &cinfo) const
 
virtual const CoreClassInfoget_class_info () const
 
bool operator== (const CoreBaseObject &obj) const
 
template<class T >
T * cast ()
 
template<class T >
const T * cast () const
 
- Public Member Functions inherited from CoreBaseType
bool is_kindof (const CoreClassInfo &cinfo) const
 
bool operator== (const CoreBaseType &obj) const
 

Protected Member Functions

virtual void execution_entry (const unsigned int &thread_id)=0
 

Friends

class SysThreadTaskManager
 

Additional Inherited Members

- Static Public Member Functions inherited from CoreBaseObject
static const CoreClassInfoclass_info ()
 
static bool ___class_destructor__ (void *instance, const bool &is_array)
 
template<class T >
static T * cast (CoreBaseObject *object)
 
template<class T >
static const T * cast (const CoreBaseObject *object)
 

Detailed Description

Abstract base class for implementing a worker task to be run in a separate thread.

Member Function Documentation

virtual void SysThreadTask::execution_entry ( const unsigned int &  thread_id)
protectedpure virtual

Execution entry point of the task. This were the task work must be implemented.

Parameters
thread_idtask thread ID.

Implemented in SysThreadTaskGeneric, and Sample2DLutTask.

SysThreadTaskManager* SysThreadTask::get_task_manager ( ) const
inline

Get the task manager that owns this task.

Returns
task manager.
const bool& SysThreadTask::is_auto_deleted ( ) const
inline

Query if this task is deleted automatically by the task manager.

Returns
true if the auto delete, false otherwise.
const bool& SysThreadTask::is_preemptible ( ) const
inline

Query if this task is preemptible (can be interrupted).

Returns
true if preemptible, false otherwise.
void SysThreadTask::set_auto_delete ( const bool &  auto_delete)
inline

Set the auto delete status.

Parameters
auto_deletetrue if the task can be automatically deleted by the task manager, false otherwise.