|
virtual void | run ()=0 |
|
| Process (ObjId _itemNum=0, uint16 type=0) |
|
uint32 | getProcessFlags () const |
|
bool | is_active () const |
|
bool | is_terminated () const |
|
bool | is_suspended () const |
|
void | fail () |
| terminate the process and recursively fail all processes waiting for it
|
|
virtual void | terminate () |
| terminate the process. This wakes up all processes waiting for it.
|
|
void | terminateDeferred () |
| terminate next frame
|
|
void | setRunPaused () |
| run even when paused
|
|
void | waitFor (ProcId pid) |
| suspend until process 'pid' returns. If pid is 0, suspend indefinitely
|
|
void | waitFor (Process *proc) |
| suspend until process returns. If proc is 0, suspend indefinitely
|
|
void | suspend () |
| suspend process
|
|
void | wakeUp (uint32 result) |
| Wake up when the process we were waiting for has finished.
|
|
virtual void | onWakeUp () |
| A hook to add aditional behavior on wakeup, before anything else happens.
|
|
void | setItemNum (ObjId it) |
|
void | setType (uint16 ty) |
|
void | setTicksPerRun (uint32 val) |
|
ProcId | getPid () const |
|
ObjId | getItemNum () const |
|
uint16 | getType () const |
|
uint32 | getTicksPerRun () const |
|
virtual Common::String | dumpInfo () const |
| dump some info about this process to a string
|
|
bool | loadData (Common::ReadStream *rs, uint32 version) |
| load Process data
|
|
virtual void | saveData (Common::WriteStream *ws) |
| save Process data
|
|
bool | validateWaiters () const |
|
◆ processflags
Enumerator |
---|
PROC_ACTIVE | is the process in the run-list?
|
PROC_SUSPENDED | suspended? (because it's waiting)
|
PROC_TERM_DEFERRED | automatically call terminate next frame
|
PROC_RUNPAUSED | run even if game is paused
|
PROC_TERM_DISPOSE | Dispose after termination.
|
PROC_PREVENT_SAVE | When set, prevent game from saving.
|
◆ validateWaiters()
bool Ultima::Ultima8::Process::validateWaiters |
( |
| ) |
const |
Check the waiting processes. This is used after loading a game. Ensures they are all valid processes and suspended. Can't be done in loadData because the waiters may not be loaded yet at that point.
◆ _ticksPerRun
uint32 Ultima::Ultima8::Process::_ticksPerRun |
|
protected |
how many kernel ticks between when this process should be run. not saved because it's fixed by process type and game.
◆ _waiting
Processes waiting for this one to finish. When this process terminates, awaken them and pass them the result val.
The documentation for this class was generated from the following file: