ScummVM API documentation
Saga2::Thread Class Reference

Public Types

enum  threadFlags {
  kTFWaiting = (1 << 0), kTFFinished = (1 << 1), kTFAborted = (1 << 2), kTFExtended = (1 << 3),
  kTFExpectResult = (1 << 4), kTFSynchronous = (1 << 5), kTFAsleep = (kTFWaiting | kTFFinished | kTFAborted)
}
 
enum  WaitTypes {
  kWaitNone = 0, kWaitDelay, kWaitFrameDelay, kWaitOther,
  kWaitTagSemaphore
}
 

Public Member Functions

 Thread (uint16 segNum, uint16 segOff, scriptCallFrame &args)
 
 Thread (void **buf)
 
 Thread (Common::SeekableReadStream *stream, ThreadID id)
 
int32 archiveSize ()
 
void * archive (void *buf)
 
void write (Common::MemoryWriteStreamDynamic *out)
 
scriptResult run ()
 
void waitForEvent (WaitTypes wt, ActiveItem *param)
 
void setExtended ()
 
void clearExtended ()
 
bool interpret ()
 

Static Public Member Functions

static void dispatch ()
 

Public Attributes

SegmentRef _programCounter
 
uint8 * _stackPtr
 
byte * _codeSeg
 
uint8 * _stackBase
 
int16 _stackSize
 
int16 _flags
 
int16 _framePtr
 
int16 _returnVal
 
bool _valid
 
WaitTypes _waitType
 
union {
   Alarm   _waitAlarm
 
   FrameAlarm   _waitFrameAlarm
 
   ActiveItem *   _waitParam
 
}; 
 
scriptCallFrame _threadArgs
 
void * _thisObject
 
uint16 _argCount
 

Friends

char * STRING (int strNum)
 
scriptResult runScript (uint16 exportEntryNum, scriptCallFrame &args)
 
void wakeUpThread (ThreadID, int16)
 

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