GATE
gate::Task Class Reference
Inheritance diagram for gate::Task:
gate::IRunnable gate::ICancelable gate::ObjectImpl< gate_task_t > gate::Object gate::TypedTask< T >

Public Types

enum  StatusEnum {
  Status_Prepared = GATE_TASK_STATUS_PREPARED , Status_Running = GATE_TASK_STATUS_RUNNING , Status_Completed = GATE_TASK_STATUS_COMPLETED , Status_Canceled = GATE_TASK_STATUS_CANCELED ,
  Status_Failed = GATE_TASK_STATUS_FAILED
}
 
typedef ObjectImpl< gate_task_tobject_impl_t
 
- Public Types inherited from gate::ObjectImpl< gate_task_t >
typedef gate_task_t impl_t
 
typedef ObjectImpl< gate_task_tobject_impl_t
 

Public Member Functions

virtual void run ()
 
virtual void cancel ()
 
 Task (gate_task_t *ptr_task)
 
 Task (Task const &src)
 
Taskoperator= (Task const &src)
 
StatusEnum status ()
 
bool_t completed ()
 
void const * getResult ()
 
void wait ()
 
bool waitFor (uint32_t timeoutMs)
 
template<class T >
bool_t getResult (T &refResult)
 
- Public Member Functions inherited from gate::ObjectImpl< gate_task_t >
 ObjectImpl (impl_t *impl) noexcept
 
 ObjectImpl (ObjectImpl const &src) noexcept
 
ObjectImploperator= (ObjectImpl const &that) noexcept
 
impl_tc_impl () const noexcept
 
- Public Member Functions inherited from gate::Object
 Object (gate_object_ptr_t obj_ptr) noexcept
 
 Object (Object const &obj) noexcept
 
Objectoperator= (Object const &obj) noexcept
 
String getInterfaceName ()
 
gate_object_ptr_t c_impl () noexcept
 
bool_t operator! () const noexcept
 
bool_t empty () const noexcept
 

Additional Inherited Members

- Protected Member Functions inherited from gate::ObjectImpl< gate_task_t >
void swap (object_impl_t &that) noexcept
 
- Protected Member Functions inherited from gate::Object
void swap (Object &that) noexcept
 
- Protected Attributes inherited from gate::ObjectImpl< gate_task_t >
impl_timpl_ptr
 

Member Function Documentation

◆ cancel()

void gate::Task::cancel ( )
virtual

Implements gate::ICancelable.

◆ run()

void gate::Task::run ( )
virtual

Implements gate::IRunnable.


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