Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
TaskManager.h
Go to the documentation of this file.
1#ifndef NW4HBM_SND_TASK_MANAGER_H
2#define NW4HBM_SND_TASK_MANAGER_H
3
4#include "Task.h"
5
6#include <revolution/mem.h>
7
8#define TASK_NUM 128
9
10namespace nw4hbm {
11 namespace snd {
12 namespace detail {
13
15 public:
22
23 public:
25
26 void AppendTask(Task* task, TaskPriority priority);
28
29 void Execute();
30 bool ExecuteSingle() NO_INLINE;
31
32 void CancelByTaskId(u32 taskId);
33
35 void* Alloc();
36 void Free(void* ptr);
37
38 static u8 mTaskArea[0x2000 + 0x44];
39
40 private:
42
43 /* 0x00 */ OSMutex mMutex;
45 /* 0x1C */ Task* mCurrentTask;
47 };
48
49 } // namespace detail
50 } // namespace snd
51} // namespace nw4hbm
52
53#endif
Definition TaskManager.h:14
Task * mCurrentTask
Definition TaskManager.h:45
TaskPriority
Definition TaskManager.h:16
@ PRIORITY_MIDDLE
Definition TaskManager.h:18
@ PRIORITY_LOW
Definition TaskManager.h:17
@ PRIORITY_HIGH
Definition TaskManager.h:19
@ PRIORITY_MAX
Definition TaskManager.h:20
Task * PopTask(TaskPriority priority)
OSMutex mMutex
Definition TaskManager.h:43
TaskList mTaskList[PRIORITY_MAX]
Definition TaskManager.h:46
static u8 mTaskArea[0x2000+0x44]
Definition TaskManager.h:38
MEMHeapHandle mHeapHandle
Definition TaskManager.h:44
static TaskManager & GetInstance()
void AppendTask(Task *task, TaskPriority priority)
Definition Task.h:10
unsigned long u32
Definition types.h:12
unsigned char u8
Definition types.h:8
Definition HBMAnmController.h:6
Definition heapCommon.h:14
Definition OSMutex.h:13