mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-04-19 16:01:15 +00:00
[qfcc] Move D_* macros to def.h
Finally, after way too long.
This commit is contained in:
parent
1f3b21a626
commit
9c902501d7
2 changed files with 13 additions and 12 deletions
|
@ -120,6 +120,19 @@ typedef struct def_s {
|
|||
void *free_addr; ///< who freed this
|
||||
} def_t;
|
||||
|
||||
#define D_PACKED(t,d) (*(t *) &(d)->space->data[(d)->offset])
|
||||
#define D_var(t, d) D_PACKED (pr_##t##_t, d)
|
||||
#define D_DOUBLE(d) D_var (double, d)
|
||||
#define D_FLOAT(d) D_var (float, d)
|
||||
#define D_INT(d) D_var (int, d)
|
||||
#define D_VECTOR(d) (&D_var (float, d))
|
||||
#define D_QUAT(d) (&D_var (float, d))
|
||||
#define D_STRING(d) D_var (string, d)
|
||||
#define D_GETSTR(d) GETSTR (D_STRING (d))
|
||||
#define D_FUNCTION(d) D_var (func, d)
|
||||
#define D_POINTER(t,d) (&D_PACKED (t, d))
|
||||
#define D_STRUCT(t,d) (*D_POINTER (t, d))
|
||||
|
||||
/** Create a new def.
|
||||
|
||||
Defs may be unnamed.
|
||||
|
|
|
@ -97,18 +97,6 @@ typedef struct pr_info_s {
|
|||
extern pr_info_t pr;
|
||||
|
||||
#define GETSTR(s) (pr.strings->strings + (s))
|
||||
#define D_PACKED(t,d) (*(t *) &(d)->space->data[(d)->offset])
|
||||
#define D_var(t, d) D_PACKED (pr_##t##_t, d)
|
||||
#define D_DOUBLE(d) D_var (double, d)
|
||||
#define D_FLOAT(d) D_var (float, d)
|
||||
#define D_INT(d) D_var (int, d)
|
||||
#define D_VECTOR(d) (&D_var (float, d))
|
||||
#define D_QUAT(d) (&D_var (float, d))
|
||||
#define D_STRING(d) D_var (string, d)
|
||||
#define D_GETSTR(d) GETSTR (D_STRING (d))
|
||||
#define D_FUNCTION(d) D_var (func, d)
|
||||
#define D_POINTER(t,d) (&D_PACKED (t, d))
|
||||
#define D_STRUCT(t,d) (*D_POINTER (t, d))
|
||||
|
||||
#define Q_POINTER(s,t,o) ((t *)((s)->data + o))
|
||||
#define Q_STRUCT(s,t,o) (*Q_POINTER (s, t, o))
|
||||
|
|
Loading…
Reference in a new issue