QuakeForge  0.7.2.210-815cf
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
progs_s Struct Reference
Collaboration diagram for progs_s:
[legend]

Data Fields

void *(* allocate_progs_mem )(progs_t *pr, int size)
 
unsigned short crc
 
int denorm_found
 
void(* file_error )(progs_t *pr, const char *path)
 
void(* free_progs_mem )(progs_t *pr, void *mem)
 
void *(* load_file )(progs_t *pr, const char *path)
 
int no_exec_limit
 
int null_bad
 
int(* parse_field )(progs_t *pr, const char *key, const char *value)
 
dprograms_tprogs
 
const char * progs_name
 
int progs_size
 
int(* resolve )(progs_t *pr)
 
struct memzone_s * zone
 
int zone_size
 
pr_int_t frame
 required for OP_STATE More...
 
pr_int_t nextthink
 required for OP_STATE More...
 
pr_int_tself
 required for OP_STATE More...
 
pr_int_t think
 required for OP_STATE More...
 
pr_int_t this
 optional for entity<->object linking More...
 
float * time
 required for OP_STATE More...
 
builtin functions
struct hashtab_s * builtin_hash
 
struct hashtab_s * builtin_num_hash
 
unsigned bi_next
 
unsigned(* bi_map )(progs_t *pr, unsigned binum)
 
symbol management
struct hashtab_s * function_hash
 
struct hashtab_s * global_hash
 
struct hashtab_s * field_hash
 
load hooks
int num_load_funcs
 
int max_load_funcs
 
pr_load_func_t ** load_funcs
 
int num_load_finish_funcs
 cleared each load More...
 
int max_load_finish_funcs
 
pr_load_func_t ** load_finish_funcs
 
string management
struct dstring_mem_sds_mem
 
strref_tfree_string_refs
 
strref_tstatic_strings
 
strref_t ** string_map
 
strref_treturn_strings [PR_RS_SLOTS]
 
int rs_slot
 
unsigned dyn_str_size
 
struct hashtab_s * strref_hash
 
int num_strings
 
strref_tpr_xtstr
 
memory map
dfunction_tpr_functions
 
bfunction_tfunction_table
 
char * pr_strings
 
int pr_stringsize
 
ddef_tpr_globaldefs
 
ddef_tpr_fielddefs
 
dstatement_tpr_statements
 
pr_type_tpr_globals
 
unsigned globals_size
 
parameter block
pr_type_tpr_return
 
pr_type_tpr_params [MAX_PARMS]
 
pr_type_tpr_real_params [MAX_PARMS]
 
pr_type_tpr_param_ptrs [2]
 
pr_type_tpr_saved_params
 
int pr_saved_argc
 
int pr_param_size
 covers both params and return More...
 
edicts
edict_t ** edicts
 
int max_edicts
 
intnum_edicts
 
intreserved_edicts
 alloc will start at reserved_edicts+1 More...
 
void(* unlink )(edict_t *ent)
 
void(* flush )(void)
 
int(* prune_edict )(progs_t *pr, edict_t *ent)
 
void(* free_edict )(progs_t *pr, edict_t *ent)
 
int pr_edict_size
 in bytes More...
 
int pr_edictareasize
 for bounds checking, starts at 0 More...
 
func_t edict_parse
 
execution state
int pr_argc
 
qboolean pr_trace
 
int pr_trace_depth
 
bfunction_tpr_xfunction
 
int pr_xstatement
 
prstack_t pr_stack [MAX_STACK_DEPTH]
 
int pr_depth
 
int localstack [LOCALSTACK_SIZE]
 
int localstack_used
 
resources
pr_resource_tresources
 
struct hashtab_s * resource_hash
 
obj info
unsigned selector_index
 
unsigned selector_index_max
 
struct obj_list_s ** selector_sels
 
string_tselector_names
 
struct hashtab_s * selector_hash
 
struct hashtab_s * classes
 
struct hashtab_s * load_methods
 
struct obj_list_s * unresolved_classes
 
struct obj_list_s * unclaimed_categories
 
struct obj_list_s * unclaimed_proto_list
 
struct obj_list_s * module_list
 
struct obj_list_s * class_tree_list
 
debug info
const char * debugfile
 
struct pr_debug_header_sdebug
 
struct pr_auxfunction_sauxfunctions
 
struct pr_auxfunction_s ** auxfunction_map
 
struct pr_lineno_slinenos
 
ddef_tlocal_defs
 
pr_type_twatch
 
int wp_conditional
 
pr_type_t wp_val
 
globals and fields needed by the VM
struct {
   pr_int_t *   self
 required for OP_STATE More...
 
   float *   time
 required for OP_STATE More...
 
globals
 
struct {
   pr_int_t   frame
 required for OP_STATE More...
 
   pr_int_t   nextthink
 required for OP_STATE More...
 
   pr_int_t   think
 required for OP_STATE More...
 
   pr_int_t   this
 optional for entity<->object linking More...
 
fields
 

Detailed Description

Examples:
vm-exec.c.

Field Documentation

void*(* allocate_progs_mem)(progs_t *pr, int size)
struct pr_auxfunction_s** auxfunction_map
struct pr_auxfunction_s* auxfunctions
unsigned(* bi_map)(progs_t *pr, unsigned binum)
unsigned bi_next
struct hashtab_s* builtin_hash
struct hashtab_s* builtin_num_hash
struct obj_list_s* class_tree_list
struct hashtab_s* classes
unsigned short crc
struct pr_debug_header_s* debug
const char* debugfile
int denorm_found
struct dstring_mem_s* ds_mem
unsigned dyn_str_size
func_t edict_parse
edict_t** edicts
struct hashtab_s* field_hash
struct { ... } fields
void(* file_error)(progs_t *pr, const char *path)
void(* flush)(void)
pr_int_t frame

required for OP_STATE

void(* free_edict)(progs_t *pr, edict_t *ent)
void(* free_progs_mem)(progs_t *pr, void *mem)
strref_t* free_string_refs
struct hashtab_s* function_hash
bfunction_t* function_table
struct hashtab_s* global_hash
struct { ... } globals
unsigned globals_size
struct pr_lineno_s* linenos
void*(* load_file)(progs_t *pr, const char *path)
pr_load_func_t** load_finish_funcs
pr_load_func_t** load_funcs
struct hashtab_s* load_methods
ddef_t* local_defs
int localstack[LOCALSTACK_SIZE]
int localstack_used
int max_edicts
int max_load_finish_funcs
int max_load_funcs
struct obj_list_s* module_list
pr_int_t nextthink

required for OP_STATE

int no_exec_limit
int null_bad
int* num_edicts
int num_load_finish_funcs

cleared each load

int num_load_funcs
int num_strings
int(* parse_field)(progs_t *pr, const char *key, const char *value)
int pr_argc
int pr_depth
int pr_edict_size

in bytes

int pr_edictareasize

for bounds checking, starts at 0

ddef_t* pr_fielddefs
dfunction_t* pr_functions
Examples:
vm-exec.c.
ddef_t* pr_globaldefs
pr_type_t* pr_globals
pr_type_t* pr_param_ptrs[2]
int pr_param_size

covers both params and return

pr_type_t* pr_params[MAX_PARMS]
pr_type_t* pr_real_params[MAX_PARMS]
pr_type_t* pr_return
int pr_saved_argc
pr_type_t* pr_saved_params
dstatement_t* pr_statements
char* pr_strings
int pr_stringsize
qboolean pr_trace
int pr_trace_depth
bfunction_t* pr_xfunction
int pr_xstatement
strref_t* pr_xtstr
dprograms_t* progs
const char* progs_name
int progs_size
int(* prune_edict)(progs_t *pr, edict_t *ent)
int* reserved_edicts

alloc will start at reserved_edicts+1

int(* resolve)(progs_t *pr)
struct hashtab_s* resource_hash
pr_resource_t* resources
strref_t* return_strings[PR_RS_SLOTS]
int rs_slot
struct hashtab_s* selector_hash
unsigned selector_index
unsigned selector_index_max
string_t* selector_names
struct obj_list_s** selector_sels
pr_int_t* self

required for OP_STATE

strref_t* static_strings
strref_t** string_map
struct hashtab_s* strref_hash
pr_int_t think

required for OP_STATE

pr_int_t this

optional for entity<->object linking

float* time

required for OP_STATE

struct obj_list_s* unclaimed_categories
struct obj_list_s* unclaimed_proto_list
void(* unlink)(edict_t *ent)
struct obj_list_s* unresolved_classes
pr_type_t* watch
int wp_conditional
pr_type_t wp_val
struct memzone_s* zone
int zone_size

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