|
#define | E_DSTRING(p, e, o) |
| Access a dstring entity field. More...
|
|
#define | E_FLOAT(e, o) |
| Access a float entity field. More...
|
|
#define | E_FUNCTION(e, o) |
| Access a function entity field. More...
|
|
#define | E_GSTRING(p, e, o) |
| Access a string entity field, converting it to a C string. More...
|
|
#define | E_INT(e, o) |
| Access an integer entity field. More...
|
|
#define | E_POINTER(e, o) |
| Access a pointer entity field. More...
|
|
#define | E_QUAT(e, o) |
| Access a quaternion entity field. More...
|
|
#define | E_STRING(e, o) |
| Access a string index entity field. More...
|
|
#define | E_UINT(e, o) |
| Access an unsigned integer entity field. More...
|
|
#define | E_var(e, o, t) ((e)->v[o].t##_var) |
|
#define | E_VECTOR(e, o) |
| Access a vector entity field. More...
|
|
#define | EDICT_NUM(p, n) (PROG_TO_EDICT (p, (n) * (p)->pr_edict_size)) |
|
#define | EDICT_TO_PROG(p, e) ((pr_int_t)(intptr_t)((byte *)(e) - PR_edicts (p))) |
|
#define | G_DSTRING(p, o) |
| Access a dstring global. More...
|
|
#define | G_EDICT(p, o) |
| Access an entity global. More...
|
|
#define | G_EDICTNUM(p, o) |
| Access an entity global. More...
|
|
#define | G_FLOAT(p, o) |
| Access a float global. More...
|
|
#define | G_FUNCTION(p, o) |
| Access a function global. More...
|
|
#define | G_GPOINTER(p, o) |
| Access a pointer parameter. More...
|
|
#define | G_GSTRING(p, o) |
| Access a string global, converting it to a C string. More...
|
|
#define | G_INT(p, o) |
| Access an integer global. More...
|
|
#define | G_POINTER(p, o) G_var (p, o, pointer) |
| Access a pointer global. More...
|
|
#define | G_QUAT(p, o) |
| Access a quaternion global. More...
|
|
#define | G_STRING(p, o) |
| Access a string index global. More...
|
|
#define | G_STRUCT(p, t, o) (*(t *)G_GPOINTER (p, o)) |
| Access a structure global. More...
|
|
#define | G_UINT(p, o) |
| Access an unsigned integer global. More...
|
|
#define | G_var(p, o, t) ((p)->pr_globals[o].t##_var) |
|
#define | G_VECTOR(p, o) |
| Access a vector global. More...
|
|
#define | LOCALSTACK_SIZE 4096 |
|
#define | MAX_STACK_DEPTH 64 |
|
#define | NEXT_EDICT(p, e) ((edict_t *) ((byte *) e + (p)->pr_edict_size)) |
|
#define | NUM_FOR_BAD_EDICT(p, e) ((e)->entnum) |
|
#define | NUM_FOR_EDICT(p, e) NUM_FOR_BAD_EDICT (p, e) |
|
#define | P_DSTRING(p, n) |
| Access a dstring parameter. More...
|
|
#define | P_EDICT(p, n) |
| Access an entity parameter. More...
|
|
#define | P_EDICTNUM(p, n) |
| Access an entity parameter. More...
|
|
#define | P_FLOAT(p, n) |
| Access a float parameter. More...
|
|
#define | P_FUNCTION(p, n) |
| Access a function parameter. More...
|
|
#define | P_GPOINTER(p, n) |
| Access a pointer parameter. More...
|
|
#define | P_GSTRING(p, n) |
| Access a string parameter, converting it to a C string. More...
|
|
#define | P_INT(p, n) |
| Access an integer parameter. More...
|
|
#define | P_POINTER(p, n) |
| Access a pointer parameter. More...
|
|
#define | P_QUAT(p, n) |
| Access a quaterion parameter. More...
|
|
#define | P_STRING(p, n) |
| Access a string index parameter. More...
|
|
#define | P_STRUCT(p, t, n) |
| Access a structure pointer parameter. More...
|
|
#define | P_UINT(p, n) |
| Access an unsigned integer parameter. More...
|
|
#define | P_var(p, n, t) ((p)->pr_params[n]->t##_var) |
|
#define | P_VECTOR(p, n) |
| Access a vector parameter. More...
|
|
#define | PR_AUTOBUILTIN (PR_RANGE_AUTO << PR_RANGE_SHIFT) |
|
#define | PR_edicts(p) ((byte *) *(p)->edicts) |
|
#define | PR_RANGE_AUTO 0x1000 |
|
#define | PR_RANGE_MASK 0xffff0000 |
|
#define | PR_RANGE_MAX 0x7fff |
|
#define | PR_RANGE_NONE 0xffff |
|
#define | PR_RANGE_QF 0x000f |
|
#define | PR_RANGE_SHIFT 16 |
|
#define | PR_RESET_PARAMS(pr) |
| Ensure P_* macros point to the right place for passing parameters to progs functions. More...
|
|
#define | PR_RS_SLOTS 16 |
|
#define | PROG_TO_EDICT(p, e) ((edict_t *) (PR_edicts (p) + (e))) |
|
#define | R_FLOAT(p) |
| Access the VM function return value as a float . More...
|
|
#define | R_FUNCTION(p) |
| Access the VM function return value as a func_t (a VM function reference) More...
|
|
#define | R_INT(p) |
| Access the VM function return value as a pr_int_t (AKA int32_t) More...
|
|
#define | R_POINTER(p) |
| Access the VM function return value as a pointer_t (a VM "pointer") More...
|
|
#define | R_QUAT(p) |
| Access the VM function return value as a quat_t quaternion. More...
|
|
#define | R_STRING(p) |
| Access the VM function return value as a string_t (a VM string reference). More...
|
|
#define | R_UINT(p) |
| Access the VM function return value as a pr_uint_t (AKA uint32_t) More...
|
|
#define | R_var(p, t) ((p)->pr_return->t##_var) |
|
#define | R_VECTOR(p) |
| Access the VM function return value as a vec3_t vector. More...
|
|
#define | RETURN_EDICT(p, e) |
| Set the return value to the given C entity pointer. More...
|
|
#define | RETURN_POINTER(p, ptr) |
| Set the return value to the given C pointer. More...
|
|
#define | RETURN_QUAT(p, q) |
| Set the return value to the given quaterion. More...
|
|
#define | RETURN_STRING(p, s) |
| Set the return value to the given C string. More...
|
|
#define | RETURN_VECTOR(p, v) |
| Set the return value to the given vector. More...
|
|
|
These macros can be used to create functions for mapping C resources to QuakeC integer handles.
Valid handles are always negative.
- Note
map is the resource map itself, not a pointer to the resource map.
|
#define | PR_RESMAP(type) struct { type *_free; type **_map; unsigned _size; } |
| Type delcaration for the resource map. More...
|
|
#define | PR_RESNEW(type, map) |
| Allocate a new resource from the resource map. More...
|
|
#define | PR_RESFREE(type, map, t) |
| Free a resource returning it to the resource map. More...
|
|
#define | PR_RESRESET(type, map) |
| Free all resources in the resource map. More...
|
|
#define | PR_RESGET(map, col) |
| Retrieve a resource from the resource map using a handle. More...
|
|
#define | PR_RESINDEX(map, ptr) |
| Convert a resource pointer to a handle. More...
|
|
|
edict_t * | ED_Alloc (progs_t *pr) |
|
void | ED_ClearEdict (progs_t *pr, edict_t *e, int val) |
|
struct plitem_s * | ED_ConvertToPlist (struct script_s *script, int nohack) |
|
void | ED_Count (progs_t *pr) |
|
edict_t * | ED_EdictNum (progs_t *pr, pr_int_t n) |
|
struct plitem_s * | ED_EntityDict (progs_t *pr, edict_t *ed) |
|
void | ED_EntityParseFunction (progs_t *pr) |
|
void | ED_Free (progs_t *pr, edict_t *ed) |
|
struct plitem_s * | ED_GlobalsDict (progs_t *pr) |
|
void | ED_InitEntity (progs_t *pr, struct plitem_s *entity, edict_t *ent) |
|
void | ED_InitGlobals (progs_t *pr, struct plitem_s *globals) |
|
void | ED_LoadFromFile (progs_t *pr, const char *data) |
|
pr_int_t | ED_NumForEdict (progs_t *pr, edict_t *e) |
|
struct plitem_s * | ED_Parse (progs_t *pr, const char *data) |
|
qboolean | ED_ParseEpair (progs_t *pr, pr_type_t *base, ddef_t *key, const char *s) |
|
void | ED_Print (progs_t *pr, edict_t *ed) |
|
void | ED_PrintEdicts (progs_t *pr, const char *fieldval) |
|
void | ED_PrintNum (progs_t *pr, pr_int_t ent) |
|
char * | PF_VarString (progs_t *pr, int first) |
|
int | PR_AccessField (progs_t *pr, const char *name, etype_t type, const char *file, int line) |
|
void | PR_AddLoadFinishFunc (progs_t *pr, pr_load_func_t *func) |
| Register a secondary function to be called after the progs code has been loaded. More...
|
|
void | PR_AddLoadFunc (progs_t *pr, pr_load_func_t *func) |
| Register a primary function to be called after the progs code has been loaded. More...
|
|
void | PR_BoundsCheck (progs_t *pr, int addr, etype_t type) |
|
void | PR_BoundsCheckSize (progs_t *pr, pointer_t addr, unsigned size) |
|
int | PR_CallFunction (progs_t *pr, func_t fnum) |
| Setup to call a function. More...
|
|
string_t | PR_CatStrings (progs_t *pr, const char *a, const char *b) |
| Make a temporary progs string that is the concatenation of two C strings. More...
|
|
int | PR_Check_Opcodes (progs_t *pr) |
| Validate the opcodes and statement addresses in the progs. More...
|
|
void | PR_ClearReturnStrings (progs_t *pr) |
| Clear all of the return string slots. More...
|
|
void | PR_Cmds_Init (progs_t *pr) |
|
void | PR_Debug_Init (void) |
|
void | PR_Debug_Init_Cvars (void) |
|
void | PR_Debug_Print (progs_t *pr, const char *expr) |
|
void | PR_Debug_Watch (progs_t *pr, const char *expr) |
|
void | PR_DumpState (progs_t *pr) |
|
qboolean | PR_EdictValid (progs_t *pr, pr_int_t e) |
|
void | PR_Error (progs_t *pr, const char *error,...) |
|
void | PR_ExecuteProgram (progs_t *pr, func_t fnum) |
| Run a progs function. More...
|
|
ddef_t * | PR_FieldAtOfs (progs_t *pr, pr_int_t ofs) |
|
pr_lineno_t * | PR_Find_Lineno (progs_t *pr, pr_uint_t addr) |
|
builtin_t * | PR_FindBuiltin (progs_t *pr, const char *name) |
| Lookup a builtin function referred by name. More...
|
|
builtin_t * | PR_FindBuiltinNum (progs_t *pr, pr_int_t num) |
| Lookup a builtin function by builtin number. More...
|
|
ddef_t * | PR_FindField (progs_t *pr, const char *name) |
|
dfunction_t * | PR_FindFunction (progs_t *pr, const char *name) |
|
ddef_t * | PR_FindGlobal (progs_t *pr, const char *name) |
|
void | PR_FreeString (progs_t *pr, string_t str) |
| Destroy a mutable, dynamic or temporary string. More...
|
|
void | PR_FreeTempStrings (progs_t *pr) |
| Free all the temporary strings allocated in the current stack frame. More...
|
|
pr_uint_t | PR_Get_Lineno_Addr (progs_t *pr, pr_lineno_t *lineno) |
|
pr_auxfunction_t * | PR_Get_Lineno_Func (progs_t *pr, pr_lineno_t *lineno) |
|
pr_uint_t | PR_Get_Lineno_Line (progs_t *pr, pr_lineno_t *lineno) |
|
ddef_t * | PR_Get_Local_Def (progs_t *pr, pr_int_t offs) |
|
ddef_t * | PR_Get_Param_Def (progs_t *pr, dfunction_t *func, unsigned parm) |
|
const char * | PR_Get_Source_File (progs_t *pr, pr_lineno_t *lineno) |
|
const char * | PR_Get_Source_Line (progs_t *pr, pr_uint_t addr) |
|
struct dstring_s * | PR_GetMutableString (progs_t *pr, string_t num) |
| Retrieve the dstring_t associated with a mutable string. More...
|
|
const char * | PR_GetString (progs_t *pr, string_t num) |
| Convert a string index to a C string. More...
|
|
ddef_t * | PR_GlobalAtOfs (progs_t *pr, pr_int_t ofs) |
|
void | PR_Init (void) |
| Initialize the progs engine. More...
|
|
void | PR_Init_Cvars (void) |
| Initialize the Cvars for the progs engine. More...
|
|
int | PR_LoadDebug (progs_t *pr) |
|
void | PR_LoadProgs (progs_t *pr, const char *progsname, int max_edicts, int zone) |
| Convenience wrapper for PR_LoadProgsFile() and PR_RunLoadFuncs(). More...
|
|
void | PR_LoadProgsFile (progs_t *pr, struct QFile_s *file, int size, int max_edicts, int zone) |
| Initialize a progs_t VM struct from an already open file. More...
|
|
int | PR_LoadStrings (progs_t *pr) |
| Initialize the string tables using the strings supplied by the progs. More...
|
|
void | PR_MakeTempString (progs_t *pr, string_t str) |
| Convert a mutable string to a temporary string. More...
|
|
string_t | PR_NewMutableString (progs_t *pr) |
| Create a new mutable string. More...
|
|
void | PR_PopFrame (progs_t *pr) |
| Pop an execution frame from the VM stack. More...
|
|
void | PR_PrintStatement (progs_t *pr, dstatement_t *s, int contents) |
|
void | PR_Profile (progs_t *pr) |
|
void | PR_PushFrame (progs_t *pr) |
| Push an execution frame onto the VM stack. More...
|
|
void | PR_RegisterBuiltins (progs_t *pr, builtin_t *builtins) |
| Register a set of builtin functions with the VM. More...
|
|
int | PR_RelocateBuiltins (progs_t *pr) |
| Fixup all automatically resolved builtin functions (func = #0 in QC). More...
|
|
int | PR_ResolveGlobals (progs_t *pr) |
|
void | PR_Resources_Clear (progs_t *pr) |
| Clear all resources before loading a new progs. More...
|
|
void * | PR_Resources_Find (progs_t *pr, const char *name) |
| Retrieve a resource registered with the VM. More...
|
|
void | PR_Resources_Init (progs_t *pr) |
| Initialize the resource management fields. More...
|
|
void | PR_Resources_Register (progs_t *pr, const char *name, void *data, void(*clear)(progs_t *, void *)) |
| Register a resource with a VM. More...
|
|
void | PR_RestoreParams (progs_t *pr) |
| Restore the parameters saved by PR_SaveParams(). More...
|
|
void | PR_RunError (progs_t *pr, const char *error,...) |
|
int | PR_RunLoadFuncs (progs_t *pr) |
| Run all load functions. More...
|
|
void | PR_SaveParams (progs_t *pr) |
| Save the current parameters. More...
|
|
string_t | PR_SetDynamicString (progs_t *pr, const char *s) |
| Make a dynamic progs string from the given C string. More...
|
|
string_t | PR_SetReturnString (progs_t *pr, const char *s) |
| Make a temporary progs string that will survive across function returns. More...
|
|
string_t | PR_SetString (progs_t *pr, const char *s) |
| Make a permanent progs string from the given C string. More...
|
|
string_t | PR_SetTempString (progs_t *pr, const char *s) |
| Make a temporary progs string that will be freed when the current progs stack frame is exited. More...
|
|
void | PR_Sprintf (progs_t *pr, struct dstring_s *result, const char *name, const char *format, int count, pr_type_t **args) |
| Formatted printing similar to C's vsprintf, but using QC types. More...
|
|
void | PR_StackTrace (progs_t *pr) |
|
qboolean | PR_StringValid (progs_t *pr, string_t num) |
| Check the validity of a string index. More...
|
|
void | PR_Undefined (progs_t *pr, const char *type, const char *name) |
|
void | PR_Zone_Free (progs_t *pr, void *ptr) |
|
void | PR_Zone_Init (progs_t *pr) |
|
void * | PR_Zone_Malloc (progs_t *pr, pr_int_t size) |
|
void * | PR_Zone_Realloc (progs_t *pr, void *ptr, pr_int_t size) |
|