#include <eng_task.hh>
Public Member Functions | |
| CLASS_METHOD Task & | GetInstance (void) |
| CLASS_METHOD void | Schedule (SharedPtr< TaskFunctor > task) |
| CLASS_METHOD void | RunTasks (void) |
Private Types | |
| typedef deque < SharedPtr < TaskFunctor > > | TaskContainer |
Private Member Functions | |
| Task (void) | |
| ~Task () | |
Private Attributes | |
| CLASS_VAR Task * | msInstance |
| CLASS_VAR SlowLock | msLock |
| CLASS_VAR TaskContainer | msTasks |
| CLASS_VAR Thread::Condition | msCondition |
Friends | |
| class | Engine |
| class | IdleFunctor |
Classes | |
| class | IdleFunctor |
| class | TaskFunctor |
| User-defined functor for a task. More... | |
GFX functions are restricted to the main thead. Therefore, other threads can schedule a "task". The main thread executes tasks during the idle event. Task class must be threadable and locked since non-main threads call it.
typedef deque<SharedPtr<TaskFunctor> > eng::Task::TaskContainer [private] |
| eng::Task::Task | ( | void | ) | [private] |
ctor/dtor.
| eng::Task::~Task | ( | ) | [private] |
| Task & eng::Task::GetInstance | ( | void | ) |
Singleton method.
| CLASS_METHOD void eng::Task::Schedule | ( | SharedPtr< TaskFunctor > | task | ) |
| void eng::Task::RunTasks | ( | void | ) |
Run tasks.
friend class Engine [friend] |
friend class IdleFunctor [friend] |
Task * eng::Task::msInstance [private] |
SlowLock eng::Task::msLock [private] |
Task::TaskContainer eng::Task::msTasks [private] |
Thread::Condition eng::Task::msCondition [private] |
Palomino 3D Engine documents generated by doxygen 1.5.3 on Fri Nov 23 11:26:25 2007