v4k-git-backup/engine/bind/v4k.lua

3175 lines
231 KiB
Lua

--autogenerated luajit bindings. do not edit.
local ffi = require("ffi")
ffi.cdef([[
//lcpp INF [0000] set: macro name but used as C declaration in:typedef struct set {
//lcpp INF [0000] array: macro name but used as C declaration in:set_item** array;
//lcpp INF [0000] set: macro name but used as C declaration in:} set;
//lcpp INF [0000] set_init: macro name but used as C declaration in:API void (set_init)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:API void (set_init)(set *m);
//lcpp INF [0000] set_init: macro name but used as C declaration in:STATIC void (set_init)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void (set_init)(set *m);
//lcpp INF [0000] set_init: macro name but used as C declaration in: void (set_init)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in: void (set_init)(set *m);
//lcpp INF [0000] set_free: macro name but used as C declaration in:API void (set_free)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:API void (set_free)(set *m);
//lcpp INF [0000] set_free: macro name but used as C declaration in:STATIC void (set_free)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void (set_free)(set *m);
//lcpp INF [0000] set_free: macro name but used as C declaration in: void (set_free)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in: void (set_free)(set *m);
//lcpp INF [0000] set_insert: macro name but used as C declaration in:API void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
//lcpp INF [0000] set: macro name but used as C declaration in:API void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
//lcpp INF [0000] set_insert: macro name but used as C declaration in:STATIC void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
//lcpp INF [0000] set_insert: macro name but used as C declaration in: void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
//lcpp INF [0000] set: macro name but used as C declaration in: void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
//lcpp INF [0000] set_erase: macro name but used as C declaration in:API void (set_erase)(set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set: macro name but used as C declaration in:API void (set_erase)(set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set_erase: macro name but used as C declaration in:STATIC void (set_erase)(set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void (set_erase)(set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set_erase: macro name but used as C declaration in: void (set_erase)(set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set: macro name but used as C declaration in: void (set_erase)(set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set_find: macro name but used as C declaration in:API void* (set_find)(const set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set: macro name but used as C declaration in:API void* (set_find)(const set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set_find: macro name but used as C declaration in:STATIC void* (set_find)(const set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void* (set_find)(const set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set_find: macro name but used as C declaration in: void* (set_find)(const set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set: macro name but used as C declaration in: void* (set_find)(const set *m, void *key, uint64_t keyhash);
//lcpp INF [0000] set_isempty: macro name but used as C declaration in:API int (set_isempty)(const set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:API int (set_isempty)(const set *m);
//lcpp INF [0000] set_isempty: macro name but used as C declaration in:STATIC int (set_isempty)(const set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC int (set_isempty)(const set *m);
//lcpp INF [0000] set_isempty: macro name but used as C declaration in: int (set_isempty)(const set *m);
//lcpp INF [0000] set: macro name but used as C declaration in: int (set_isempty)(const set *m);
//lcpp INF [0000] set_count: macro name but used as C declaration in:API int (set_count)(const set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:API int (set_count)(const set *m);
//lcpp INF [0000] set_count: macro name but used as C declaration in:STATIC int (set_count)(const set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC int (set_count)(const set *m);
//lcpp INF [0000] set_count: macro name but used as C declaration in: int (set_count)(const set *m);
//lcpp INF [0000] set: macro name but used as C declaration in: int (set_count)(const set *m);
//lcpp INF [0000] set_gc: macro name but used as C declaration in:API void (set_gc)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:API void (set_gc)(set *m);
//lcpp INF [0000] set_gc: macro name but used as C declaration in:STATIC void (set_gc)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void (set_gc)(set *m);
//lcpp INF [0000] set_gc: macro name but used as C declaration in: void (set_gc)(set *m);
//lcpp INF [0000] set: macro name but used as C declaration in: void (set_gc)(set *m);
//lcpp INF [0000] set_clear: macro name but used as C declaration in:API void (set_clear)(set* m);
//lcpp INF [0000] set: macro name but used as C declaration in:API void (set_clear)(set* m);
//lcpp INF [0000] set_clear: macro name but used as C declaration in:STATIC void (set_clear)(set* m);
//lcpp INF [0000] set: macro name but used as C declaration in:STATIC void (set_clear)(set* m);
//lcpp INF [0000] set_clear: macro name but used as C declaration in: void (set_clear)(set* m);
//lcpp INF [0000] set: macro name but used as C declaration in: void (set_clear)(set* m);
//lcpp INF [0000] map: macro name but used as C declaration in:typedef struct map {
//lcpp INF [0000] array: macro name but used as C declaration in:pair** array;
//lcpp INF [0000] map: macro name but used as C declaration in:} map;
//lcpp INF [0000] map_init: macro name but used as C declaration in:API void (map_init)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:API void (map_init)(map *m);
//lcpp INF [0000] map_init: macro name but used as C declaration in:STATIC void (map_init)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void (map_init)(map *m);
//lcpp INF [0000] map_init: macro name but used as C declaration in: void (map_init)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in: void (map_init)(map *m);
//lcpp INF [0000] map_free: macro name but used as C declaration in:API void (map_free)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:API void (map_free)(map *m);
//lcpp INF [0000] map_free: macro name but used as C declaration in:STATIC void (map_free)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void (map_free)(map *m);
//lcpp INF [0000] map_free: macro name but used as C declaration in: void (map_free)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in: void (map_free)(map *m);
//lcpp INF [0000] map_insert: macro name but used as C declaration in:API void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
//lcpp INF [0000] map: macro name but used as C declaration in:API void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
//lcpp INF [0000] map_insert: macro name but used as C declaration in:STATIC void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
//lcpp INF [0000] map_insert: macro name but used as C declaration in: void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
//lcpp INF [0000] map: macro name but used as C declaration in: void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
//lcpp INF [0000] map_erase: macro name but used as C declaration in:API void (map_erase)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map: macro name but used as C declaration in:API void (map_erase)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map_erase: macro name but used as C declaration in:STATIC void (map_erase)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void (map_erase)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map_erase: macro name but used as C declaration in: void (map_erase)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map: macro name but used as C declaration in: void (map_erase)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map_find: macro name but used as C declaration in:API void* (map_find)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map: macro name but used as C declaration in:API void* (map_find)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map_find: macro name but used as C declaration in:STATIC void* (map_find)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void* (map_find)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map_find: macro name but used as C declaration in: void* (map_find)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map: macro name but used as C declaration in: void* (map_find)(map *m, void *key, uint64_t keyhash);
//lcpp INF [0000] map_isempty: macro name but used as C declaration in:API int (map_isempty)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:API int (map_isempty)(map *m);
//lcpp INF [0000] map_isempty: macro name but used as C declaration in:STATIC int (map_isempty)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC int (map_isempty)(map *m);
//lcpp INF [0000] map_isempty: macro name but used as C declaration in: int (map_isempty)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in: int (map_isempty)(map *m);
//lcpp INF [0000] map_count: macro name but used as C declaration in:API int (map_count)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:API int (map_count)(map *m);
//lcpp INF [0000] map_count: macro name but used as C declaration in:STATIC int (map_count)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC int (map_count)(map *m);
//lcpp INF [0000] map_count: macro name but used as C declaration in: int (map_count)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in: int (map_count)(map *m);
//lcpp INF [0000] map_gc: macro name but used as C declaration in:API void (map_gc)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:API void (map_gc)(map *m);
//lcpp INF [0000] map_gc: macro name but used as C declaration in:STATIC void (map_gc)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void (map_gc)(map *m);
//lcpp INF [0000] map_gc: macro name but used as C declaration in: void (map_gc)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in: void (map_gc)(map *m);
//lcpp INF [0000] map: macro name but used as C declaration in:API bool (map_sort)(map* m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC bool (map_sort)(map* m);
//lcpp INF [0000] map: macro name but used as C declaration in: bool (map_sort)(map* m);
//lcpp INF [0000] map_clear: macro name but used as C declaration in:API void (map_clear)(map* m);
//lcpp INF [0000] map: macro name but used as C declaration in:API void (map_clear)(map* m);
//lcpp INF [0000] map_clear: macro name but used as C declaration in:STATIC void (map_clear)(map* m);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC void (map_clear)(map* m);
//lcpp INF [0000] map_clear: macro name but used as C declaration in: void (map_clear)(map* m);
//lcpp INF [0000] map: macro name but used as C declaration in: void (map_clear)(map* m);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:typedef union vec2i{ struct { int X,Y; }; struct { int x,y; }; struct { int r,g; }; struct { int w,h; }; struct { int min,max; }; struct { int from,to; }; struct { int src,dst; }; int v2[2]; int array[1]; } vec2i;
//lcpp INF [0000] array: macro name but used as C declaration in:typedef union vec2i{ struct { int X,Y; }; struct { int x,y; }; struct { int r,g; }; struct { int w,h; }; struct { int min,max; }; struct { int from,to; }; struct { int src,dst; }; int v2[2]; int array[1]; } vec2i;
//lcpp INF [0000] vec2i: macro name but used as C declaration in:typedef union vec2i{ struct { int X,Y; }; struct { int x,y; }; struct { int r,g; }; struct { int w,h; }; struct { int min,max; }; struct { int from,to; }; struct { int src,dst; }; int v2[2]; int array[1]; } vec2i;
//lcpp INF [0000] vec3i: macro name but used as C declaration in:typedef union vec3i{ struct { int X,Y,Z; }; struct { int x,y,z; }; struct { int r,g,b; }; struct { int w,h,d; }; struct { int min,max; }; struct { int from,to,step; }; struct { int src,dst; }; int v3[3]; int array[1]; } vec3i;
//lcpp INF [0000] array: macro name but used as C declaration in:typedef union vec3i{ struct { int X,Y,Z; }; struct { int x,y,z; }; struct { int r,g,b; }; struct { int w,h,d; }; struct { int min,max; }; struct { int from,to,step; }; struct { int src,dst; }; int v3[3]; int array[1]; } vec3i;
//lcpp INF [0000] vec3i: macro name but used as C declaration in:typedef union vec3i{ struct { int X,Y,Z; }; struct { int x,y,z; }; struct { int r,g,b; }; struct { int w,h,d; }; struct { int min,max; }; struct { int from,to,step; }; struct { int src,dst; }; int v3[3]; int array[1]; } vec3i;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec2 { struct { float X,Y; }; struct { float x,y; }; struct { float r,g; }; struct { float w,h; }; struct { float min,max; }; struct { float from,to; }; struct { float src,dst; }; float v2[2]; float array[1]; } vec2;
//lcpp INF [0000] array: macro name but used as C declaration in:typedef union vec2 { struct { float X,Y; }; struct { float x,y; }; struct { float r,g; }; struct { float w,h; }; struct { float min,max; }; struct { float from,to; }; struct { float src,dst; }; float v2[2]; float array[1]; } vec2;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec2 { struct { float X,Y; }; struct { float x,y; }; struct { float r,g; }; struct { float w,h; }; struct { float min,max; }; struct { float from,to; }; struct { float src,dst; }; float v2[2]; float array[1]; } vec2;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
//lcpp INF [0000] array: macro name but used as C declaration in:typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
//lcpp INF [0000] vec4: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec2: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] array: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] vec4: macro name but used as C declaration in:typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
//lcpp INF [0000] quat: macro name but used as C declaration in:typedef union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; } quat;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; } quat;
//lcpp INF [0000] vec4: macro name but used as C declaration in:typedef union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; } quat;
//lcpp INF [0000] array: macro name but used as C declaration in:typedef union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; } quat;
//lcpp INF [0000] quat: macro name but used as C declaration in:typedef union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; } quat;
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float simplex2( vec2 xy );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float simplex2( vec2 xy );
//lcpp INF [0000] vec2: macro name but used as C declaration in: float simplex2( vec2 xy );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float simplex3( vec3 xyz );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float simplex3( vec3 xyz );
//lcpp INF [0000] vec3: macro name but used as C declaration in: float simplex3( vec3 xyz );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API float simplex4( vec4 xyzw );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC float simplex4( vec4 xyzw );
//lcpp INF [0000] vec4: macro name but used as C declaration in: float simplex4( vec4 xyzw );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 ptr2 (const float *a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 ptr2 (const float *a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 ptr2 (const float *a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 neg2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 neg2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 neg2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 neg2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 neg2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 neg2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 add2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 sub2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 mul2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 div2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 inc2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 inc2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 inc2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 inc2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 inc2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 inc2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 dec2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 dec2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 dec2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 dec2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 dec2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 dec2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 scale2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 scale2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 scale2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 scale2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 scale2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 scale2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 pmod2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 pmod2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 pmod2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 pmod2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 pmod2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 pmod2 (vec2 a, float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 min2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 max2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 abs2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 abs2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 abs2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 abs2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 abs2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 abs2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 floor2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 floor2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 floor2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 floor2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 floor2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 floor2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 fract2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 fract2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 fract2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 fract2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 fract2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 fract2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 ceil2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 ceil2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 ceil2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 ceil2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 ceil2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 ceil2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float dot2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float dot2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float dot2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float dot2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: float dot2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: float dot2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 refl2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float cross2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float cross2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float cross2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float cross2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: float cross2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: float cross2 (vec2 a, vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float len2sq (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float len2sq (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: float len2sq (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API float len2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC float len2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: float len2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 norm2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 norm2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 norm2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 norm2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 norm2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 norm2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API int finite2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC int finite2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in: int finite2 (vec2 a );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 mix2 (vec2 a,vec2 b,float t);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 clamp2(vec2 v,vec2 a,vec2 b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 clamp2f(vec2 v,float a,float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 clamp2f(vec2 v,float a,float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 clamp2f(vec2 v,float a,float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 clamp2f(vec2 v,float a,float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 clamp2f(vec2 v,float a,float b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 clamp2f(vec2 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rnd3 (void);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rnd3 (void);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rnd3 (void);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 ptr3 (const float *a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 ptr3 (const float *a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 ptr3 (const float *a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 vec23 (vec2 a, float z );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec3 vec23 (vec2 a, float z );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 vec23 (vec2 a, float z );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec3 vec23 (vec2 a, float z );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 vec23 (vec2 a, float z );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec3 vec23 (vec2 a, float z );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 neg3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 neg3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 neg3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 neg3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 neg3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 neg3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 add3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 sub3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mul3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 div3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 inc3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 inc3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 inc3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 inc3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 inc3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 inc3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 dec3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 dec3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 dec3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 dec3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 dec3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 dec3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 scale3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 scale3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 scale3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 scale3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 scale3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 scale3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 pmod3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 pmod3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 pmod3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 pmod3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 pmod3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 pmod3 (vec3 a, float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 min3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 max3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 abs3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 abs3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 abs3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 abs3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 abs3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 abs3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 floor3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 floor3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 floor3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 floor3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 floor3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 floor3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 fract3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 fract3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 fract3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 fract3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 fract3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 fract3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 ceil3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 ceil3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 ceil3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 ceil3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 ceil3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 ceil3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 cross3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float dot3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float dot3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float dot3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float dot3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: float dot3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: float dot3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 refl3 (vec3 a, vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float len3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float len3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: float len3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float len3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float len3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: float len3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 norm3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 norm3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 norm3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 norm3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 norm3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 norm3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 norm3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 norm3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 norm3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 norm3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 norm3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 norm3sq (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int finite3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int finite3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in: int finite3 (vec3 a );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mix3 (vec3 a,vec3 b,float t);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 clamp3(vec3 v,vec3 a,vec3 b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 clamp3f(vec3 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 clamp3f(vec3 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 clamp3f(vec3 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 clamp3f(vec3 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 clamp3f(vec3 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 clamp3f(vec3 v,float a,float b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ortho3 (vec3 *left, vec3 *up, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotatex3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotatex3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotatex3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotatex3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotatex3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotatex3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotatey3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotatey3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotatey3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotatey3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotatey3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotatey3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotatez3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotatez3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotatez3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotatez3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotatez3 (vec3 dir, float degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotatez3 (vec3 dir, float degrees);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 ptr4 (const float *a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 ptr4 (const float *a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 ptr4 (const float *a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 vec34 (vec3 a, float w );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec4 vec34 (vec3 a, float w );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 vec34 (vec3 a, float w );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec4 vec34 (vec3 a, float w );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 vec34 (vec3 a, float w );
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec4 vec34 (vec3 a, float w );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 neg4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 neg4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 neg4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 neg4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 neg4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 neg4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 add4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 sub4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 mul4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 div4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 inc4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 inc4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 inc4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 inc4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 inc4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 inc4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 dec4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 dec4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 dec4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 dec4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 dec4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 dec4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 scale4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 scale4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 scale4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 scale4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 scale4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 scale4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 pmod4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 pmod4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 pmod4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 pmod4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 pmod4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 pmod4 (vec4 a, float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 min4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 max4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 abs4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 abs4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 abs4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 abs4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 abs4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 abs4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 floor4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 floor4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 floor4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 floor4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 floor4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 floor4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 fract4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 fract4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 fract4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 fract4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 fract4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 fract4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 ceil4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 ceil4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 ceil4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 ceil4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 ceil4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 ceil4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API float dot4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API float dot4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC float dot4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC float dot4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: float dot4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: float dot4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 refl4 (vec4 a, vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API float len4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC float len4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: float len4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API float len4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC float len4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: float len4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 norm4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 norm4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 norm4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 norm4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 norm4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 norm4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 norm4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 norm4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 norm4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 norm4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 norm4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 norm4sq (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API int finite4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC int finite4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: int finite4 (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 mix4 (vec4 a,vec4 b,float t);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 clamp4(vec4 v,vec4 a,vec4 b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 clamp4f(vec4 v,float a,float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 clamp4f(vec4 v,float a,float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 clamp4f(vec4 v,float a,float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 clamp4f(vec4 v,float a,float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 clamp4f(vec4 v,float a,float b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 clamp4f(vec4 v,float a,float b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat idq ( );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat idq ( );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat idq ( );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat ptrq (const float *a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat ptrq (const float *a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat ptrq (const float *a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat vec3q (vec3 a, float w );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API quat vec3q (vec3 a, float w );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat vec3q (vec3 a, float w );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC quat vec3q (vec3 a, float w );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat vec3q (vec3 a, float w );
//lcpp INF [0000] vec3: macro name but used as C declaration in: quat vec3q (vec3 a, float w );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat vec4q (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API quat vec4q (vec4 a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat vec4q (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC quat vec4q (vec4 a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat vec4q (vec4 a );
//lcpp INF [0000] vec4: macro name but used as C declaration in: quat vec4q (vec4 a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat negq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat negq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat negq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat negq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat negq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat negq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat conjq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat conjq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat conjq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat conjq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat conjq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat conjq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat addq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat subq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mulq (quat p, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat scaleq (quat a, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat scaleq (quat a, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat scaleq (quat a, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat scaleq (quat a, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat scaleq (quat a, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat scaleq (quat a, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat normq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat normq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat normq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat normq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat normq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in: quat normq (quat a );
//lcpp INF [0000] quat: macro name but used as C declaration in:API float dotq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API float dotq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC float dotq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC float dotq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: float dotq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in: float dotq (quat a, quat b);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mixq(quat a, quat b, float t);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat slerpq(quat a, quat b, float s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat rotationq(float deg,float x,float y,float z);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat rotationq(float deg,float x,float y,float z);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat rotationq(float deg,float x,float y,float z);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat mat44q (mat44 M);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat mat44q (mat44 M);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat mat44q (mat44 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: vec3 rotate3q_2(vec3 v, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] quat: macro name but used as C declaration in:API vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] quat: macro name but used as C declaration in: vec3 rotate3q(vec3 v, quat r);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 euler (quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API vec3 euler (quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 euler (quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC vec3 euler (quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 euler (quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: vec3 euler (quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API quat eulerq (vec3 pyr_degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API quat eulerq (vec3 pyr_degrees);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC quat eulerq (vec3 pyr_degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC quat eulerq (vec3 pyr_degrees);
//lcpp INF [0000] quat: macro name but used as C declaration in: quat eulerq (vec3 pyr_degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in: quat eulerq (vec3 pyr_degrees);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mulv33(mat33 m, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 mulv33(mat33 m, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mulv33(mat33 m, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 mulv33(mat33 m, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mulv33(mat33 m, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 mulv33(mat33 m, vec3 v);
//lcpp INF [0000] quat: macro name but used as C declaration in:API void rotationq33(mat33 m, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC void rotationq33(mat33 m, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: void rotationq33(mat33 m, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:API void compose33(mat33 m, quat r, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void compose33(mat33 m, quat r, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC void compose33(mat33 m, quat r, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void compose33(mat33 m, quat r, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in: void compose33(mat33 m, quat r, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void compose33(mat33 m, quat r, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in: void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void compose34(mat34 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
//lcpp INF [0000] quat: macro name but used as C declaration in:API void rotationq44(mat44 m, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC void rotationq44(mat44 m, quat q);
//lcpp INF [0000] quat: macro name but used as C declaration in: void rotationq44(mat44 m, quat q);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in:API void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] quat: macro name but used as C declaration in: void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void compose44(mat44 m, vec3 t, quat q, vec3 s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] quat: macro name but used as C declaration in:API vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] quat: macro name but used as C declaration in: vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 transformq(const quat q, const vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 transform33(const mat33 m, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 transform33(const mat33 m, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 transform33(const mat33 m, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 transform33(const mat33 m, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 transform33(const mat33 m, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 transform33(const mat33 m, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 transform344(const mat44 m, const vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 transform344(const mat44 m, const vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 transform344(const mat44 m, const vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 transform344(const mat44 m, const vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 transform344(const mat44 m, const vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 transform344(const mat44 m, const vec3 p);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 transform444(const mat44 m, const vec4 p);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 transform444(const mat44 m, const vec4 p);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 transform444(const mat44 m, const vec4 p);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 transform444(const mat44 m, const vec4 p);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 transform444(const mat44 m, const vec4 p);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 transform444(const mat44 m, const vec4 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec3: macro name but used as C declaration in: bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec3: macro name but used as C declaration in: bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec4: macro name but used as C declaration in: bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void print2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void print2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in: void print2( vec2 v );
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void print3( vec3 v );
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void print3( vec3 v );
//lcpp INF [0000] vec3: macro name but used as C declaration in: void print3( vec3 v );
//lcpp INF [0000] vec4: macro name but used as C declaration in:API void print4( vec4 v );
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC void print4( vec4 v );
//lcpp INF [0000] vec4: macro name but used as C declaration in: void print4( vec4 v );
//lcpp INF [0000] quat: macro name but used as C declaration in:API void printq( quat q );
//lcpp INF [0000] quat: macro name but used as C declaration in:STATIC void printq( quat q );
//lcpp INF [0000] quat: macro name but used as C declaration in: void printq( quat q );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 atof2(const char *s);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 atof2(const char *s);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 atof2(const char *s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 atof3(const char *s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 atof3(const char *s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 atof3(const char *s);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 atof4(const char *s);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 atof4(const char *s);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 atof4(const char *s);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API char* ftoa2(vec2 v);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC char* ftoa2(vec2 v);
//lcpp INF [0000] vec2: macro name but used as C declaration in: char* ftoa2(vec2 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API char* ftoa3(vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC char* ftoa3(vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: char* ftoa3(vec3 v);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API char* ftoa4(vec4 v);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC char* ftoa4(vec4 v);
//lcpp INF [0000] vec4: macro name but used as C declaration in: char* ftoa4(vec4 v);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void swapf2(vec2 *a, vec2 *b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void swapf2(vec2 *a, vec2 *b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void swapf2(vec2 *a, vec2 *b);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void swapf2(vec2 *a, vec2 *b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void swapf2(vec2 *a, vec2 *b);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void swapf2(vec2 *a, vec2 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void swapf3(vec3 *a, vec3 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void swapf3(vec3 *a, vec3 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void swapf3(vec3 *a, vec3 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void swapf3(vec3 *a, vec3 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void swapf3(vec3 *a, vec3 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void swapf3(vec3 *a, vec3 *b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API void swapf4(vec4 *a, vec4 *b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API void swapf4(vec4 *a, vec4 *b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC void swapf4(vec4 *a, vec4 *b);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC void swapf4(vec4 *a, vec4 *b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: void swapf4(vec4 *a, vec4 *b);
//lcpp INF [0000] vec4: macro name but used as C declaration in: void swapf4(vec4 *a, vec4 *b);
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 position;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 velocity;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 acceleration;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 prev_position;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3* steering_targets;
//lcpp INF [0000] map: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; array(boid_t*) val; } tmp, *ptr; array(boid_t*)* tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] vec3: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; array(boid_t*) val; } tmp, *ptr; array(boid_t*)* tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] map: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; boid_t** val; } tmp, *ptr; boid_t*** tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] vec3: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; boid_t** val; } tmp, *ptr; boid_t*** tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] vec3: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; boid_t** val; } tmp, *ptr; boid_t*** tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] vec3: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; boid_t** val; } tmp, *ptr; boid_t*** tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] vec3: macro name but used as C declaration in:struct { map base; struct { pair p; vec3* key; boid_t** val; } tmp, *ptr; boid_t*** tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
//lcpp INF [0000] map: macro name but used as C declaration in:API int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:API int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:API int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:API int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:STATIC int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:STATIC int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in:STATIC int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] map: macro name but used as C declaration in: int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in: int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in: int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec2i: macro name but used as C declaration in: int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 a;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 b;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 a;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 b;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 p;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 p0;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 p1;
//lcpp INF [0000] vec3: macro name but used as C declaration in:int gjk(gjk_simplex *s, const gjk_support *sup, vec3 *dv);
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct line { vec3 a, b; } line;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct sphere { vec3 c; float r; } sphere;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct aabb { vec3 min, max; } aabb;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct plane { vec3 p, n; } plane;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct capsule { vec3 a, b; float r; } capsule;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct ray { vec3 p, d; } ray;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct triangle { vec3 p0,p1,p2; } triangle;
//lcpp INF [0000] vec3: macro name but used as C declaration in:typedef struct poly { vec3* verts; int cnt; } poly;
//lcpp INF [0000] vec4: macro name but used as C declaration in:typedef union frustum { struct { vec4 l, r, t, b, n, f; }; vec4 pl[6]; float v[24]; } frustum;
//lcpp INF [0000] vec4: macro name but used as C declaration in:typedef union frustum { struct { vec4 l, r, t, b, n, f; }; vec4 pl[6]; float v[24]; } frustum;
//lcpp INF [0000] vec3: macro name but used as C declaration in:struct { int hits; vec3 p0, p1; float distance2; int iterations; };
//lcpp INF [0000] vec3: macro name but used as C declaration in:union { vec3 p; vec3 contact_point; };
//lcpp INF [0000] vec3: macro name but used as C declaration in:union { vec3 p; vec3 contact_point; };
//lcpp INF [0000] vec3: macro name but used as C declaration in:union { vec3 n; vec3 normal; };
//lcpp INF [0000] vec3: macro name but used as C declaration in:union { vec3 n; vec3 normal; };
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float line_distance2_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float line_distance2_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: float line_distance2_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 line_closest_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 line_closest_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 line_closest_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 line_closest_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 line_closest_point(line l, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 line_closest_point(line l, vec3 p);
//lcpp INF [0000] ray: macro name but used as C declaration in:API float ray_test_plane(ray r, vec4 p4);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API float ray_test_plane(ray r, vec4 p4);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC float ray_test_plane(ray r, vec4 p4);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC float ray_test_plane(ray r, vec4 p4);
//lcpp INF [0000] ray: macro name but used as C declaration in: float ray_test_plane(ray r, vec4 p4);
//lcpp INF [0000] vec4: macro name but used as C declaration in: float ray_test_plane(ray r, vec4 p4);
//lcpp INF [0000] ray: macro name but used as C declaration in:API float ray_test_triangle(ray r, triangle t);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC float ray_test_triangle(ray r, triangle t);
//lcpp INF [0000] ray: macro name but used as C declaration in: float ray_test_triangle(ray r, triangle t);
//lcpp INF [0000] ray: macro name but used as C declaration in:API int ray_test_sphere(float *t0, float *t1, ray r, sphere s);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC int ray_test_sphere(float *t0, float *t1, ray r, sphere s);
//lcpp INF [0000] ray: macro name but used as C declaration in: int ray_test_sphere(float *t0, float *t1, ray r, sphere s);
//lcpp INF [0000] ray: macro name but used as C declaration in:API int ray_test_aabb(float *t0, float *t1, ray r, aabb a);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC int ray_test_aabb(float *t0, float *t1, ray r, aabb a);
//lcpp INF [0000] ray: macro name but used as C declaration in: int ray_test_aabb(float *t0, float *t1, ray r, aabb a);
//lcpp INF [0000] ray: macro name but used as C declaration in:API hit* ray_hit_plane(ray r, plane p);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC hit* ray_hit_plane(ray r, plane p);
//lcpp INF [0000] ray: macro name but used as C declaration in: hit* ray_hit_plane(ray r, plane p);
//lcpp INF [0000] ray: macro name but used as C declaration in:API hit* ray_hit_triangle(ray r, triangle t);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC hit* ray_hit_triangle(ray r, triangle t);
//lcpp INF [0000] ray: macro name but used as C declaration in: hit* ray_hit_triangle(ray r, triangle t);
//lcpp INF [0000] ray: macro name but used as C declaration in:API hit* ray_hit_sphere(ray r, sphere s);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC hit* ray_hit_sphere(ray r, sphere s);
//lcpp INF [0000] ray: macro name but used as C declaration in: hit* ray_hit_sphere(ray r, sphere s);
//lcpp INF [0000] ray: macro name but used as C declaration in:API hit* ray_hit_aabb(ray r, aabb a);
//lcpp INF [0000] ray: macro name but used as C declaration in:STATIC hit* ray_hit_aabb(ray r, aabb a);
//lcpp INF [0000] ray: macro name but used as C declaration in: hit* ray_hit_aabb(ray r, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 sphere_closest_point(sphere s, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 sphere_closest_point(sphere s, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 sphere_closest_point(sphere s, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 sphere_closest_point(sphere s, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 sphere_closest_point(sphere s, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 sphere_closest_point(sphere s, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 aabb_closest_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 aabb_closest_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 aabb_closest_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 aabb_closest_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 aabb_closest_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 aabb_closest_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float aabb_distance2_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float aabb_distance2_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: float aabb_distance2_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int aabb_contains_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int aabb_contains_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int aabb_contains_point(aabb a, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API float capsule_distance2_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC float capsule_distance2_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: float capsule_distance2_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 capsule_closest_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 capsule_closest_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 capsule_closest_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 capsule_closest_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 capsule_closest_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 capsule_closest_point(capsule c, vec3 p);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_test_sphere_transform(poly p, vec3 pos3, mat33 rot33, sphere s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_test_sphere_transform(poly p, vec3 pos3, mat33 rot33, sphere s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_test_sphere_transform(poly p, vec3 pos3, mat33 rot33, sphere s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_test_aabb_transform(poly p, vec3 apos3, mat33 arot33, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_test_aabb_transform(poly p, vec3 apos3, mat33 arot33, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_test_aabb_transform(poly p, vec3 apos3, mat33 arot33, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_test_capsule_transform(poly p, vec3 pos3, mat33 rot33, capsule c);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_test_capsule_transform(poly p, vec3 pos3, mat33 rot33, capsule c);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_test_capsule_transform(poly p, vec3 pos3, mat33 rot33, capsule c);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_hit_sphere_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, sphere s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_hit_sphere_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, sphere s);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_hit_sphere_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, sphere s);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_hit_aabb_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_hit_aabb_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_hit_aabb_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, aabb a);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_hit_capsule_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, capsule c);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_hit_capsule_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, capsule c);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_hit_capsule_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, capsule c);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec4: macro name but used as C declaration in: vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec4 plane4(vec3 p, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API poly pyramid(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API poly pyramid(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC poly pyramid(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC poly pyramid(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in: poly pyramid(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in: poly pyramid(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API poly diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API poly diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC poly diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC poly diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in: poly diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in: poly diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 editor_pick(float mouse_x, float mouse_y);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 editor_pick(float mouse_x, float mouse_y);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 editor_pick(float mouse_x, float mouse_y);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in: int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
//lcpp INF [0000] map: macro name but used as C declaration in:typedef struct { map base; struct { pair p; char* key; char* val; } tmp, *ptr; char** tmpval; int (*typed_cmp)(char*, char*); uint64_t (*typed_hash)(char*); } * ini_t;
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 font_xy();
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 font_xy();
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 font_xy();
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 font_print(const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 font_print(const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 font_print(const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 font_rect(const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 font_rect(const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 font_rect(const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 font_highlight(const char *text, const void *colors);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 font_highlight(const char *text, const void *colors);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 font_highlight(const char *text, const void *colors);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input2( int vk );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input2( int vk );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input2( int vk );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_diff2( int vk );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_diff2( int vk );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_diff2( int vk );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_frame2( int vk, int Nth_frame );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_frame2( int vk, int Nth_frame );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_frame2( int vk, int Nth_frame );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_filter_positive2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_filter_positive2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_filter_positive2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_filter_positive2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_filter_positive2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_filter_positive2( vec2 v );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_touch(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_touch(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_touch(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_touch_delta(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_touch_delta(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_touch_delta(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 input_touch_delta_from_origin(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 input_touch_delta_from_origin(unsigned button, float sensitivity);
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 input_touch_delta_from_origin(unsigned button, float sensitivity);
//lcpp INF [0000] ctor: macro name but used as C declaration in:API extern void (*ctor[256])();
//lcpp INF [0000] ctor: macro name but used as C declaration in:STATIC extern void (*ctor[256])();
//lcpp INF [0000] ctor: macro name but used as C declaration in: extern void (*ctor[256])();
//lcpp INF [0000] dtor: macro name but used as C declaration in:API extern void (*dtor[256])();
//lcpp INF [0000] dtor: macro name but used as C declaration in:STATIC extern void (*dtor[256])();
//lcpp INF [0000] dtor: macro name but used as C declaration in: extern void (*dtor[256])();
//lcpp INF [0000] map: macro name but used as C declaration in:typedef struct { map base; struct { pair p; char * key; struct profile_t val; } tmp, *ptr; struct profile_t* tmpval; int (*typed_cmp)(char *, char *); uint64_t (*typed_hash)(char *); } * profiler_t;
//lcpp INF [0000] vec4: macro name but used as C declaration in:vec4 color;
//lcpp INF [0000] vec4: macro name but used as C declaration in:API void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
//lcpp INF [0000] vec4: macro name but used as C declaration in: void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
//lcpp INF [0000] map: macro name but used as C declaration in:int* map;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 position;
//lcpp INF [0000] map: macro name but used as C declaration in:API tilemap_t tilemap(const char *map, int blank_chr, int linefeed_chr);
//lcpp INF [0000] map: macro name but used as C declaration in:STATIC tilemap_t tilemap(const char *map, int blank_chr, int linefeed_chr);
//lcpp INF [0000] map: macro name but used as C declaration in: tilemap_t tilemap(const char *map, int blank_chr, int linefeed_chr);
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 position;
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void tiled_render(tiled_t tmx, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void tiled_render(tiled_t tmx, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void tiled_render(tiled_t tmx, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void spine_render(spine_t *p, vec3 offset, unsigned flags);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void spine_render(spine_t *p, vec3 offset, unsigned flags);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void spine_render(spine_t *p, vec3 offset, unsigned flags);
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 sh[9];
//lcpp INF [0000] vec4: macro name but used as C declaration in:vec4 light_position;
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void shader_vec2(const char *uniform, vec2 v);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void shader_vec2(const char *uniform, vec2 v);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void shader_vec2(const char *uniform, vec2 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void shader_vec3(const char *uniform, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void shader_vec3(const char *uniform, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void shader_vec3(const char *uniform, vec3 v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void shader_vec3v(const char *uniform, int count, vec3 *v);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void shader_vec3v(const char *uniform, int count, vec3 *v);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void shader_vec3v(const char *uniform, int count, vec3 *v);
//lcpp INF [0000] vec4: macro name but used as C declaration in:API void shader_vec4(const char *uniform, vec4 v);
//lcpp INF [0000] vec4: macro name but used as C declaration in:STATIC void shader_vec4(const char *uniform, vec4 v);
//lcpp INF [0000] vec4: macro name but used as C declaration in: void shader_vec4(const char *uniform, vec4 v);
//lcpp INF [0000] vec3i: macro name but used as C declaration in:vec3i* in_index3;
//lcpp INF [0000] vec3i: macro name but used as C declaration in:vec3i* out_index3;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3* in_vertex3;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3* out_vertex3;
//lcpp INF [0000] vec4: macro name but used as C declaration in:vec4 color;
//lcpp INF [0000] vec2i: macro name but used as C declaration in:vec2i dims;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 pose;
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 pose(bool forward, float curframe, int minframe, int maxframe, bool loop, float *opt_retframe);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 pose(bool forward, float curframe, int minframe, int maxframe, bool loop, float *opt_retframe);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 pose(bool forward, float curframe, int minframe, int maxframe, bool loop, float *opt_retframe);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void viewport_clip(vec2 from, vec2 to);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void viewport_clip(vec2 from, vec2 to);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void viewport_clip(vec2 from, vec2 to);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void viewport_clip(vec2 from, vec2 to);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void viewport_clip(vec2 from, vec2 to);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void viewport_clip(vec2 from, vec2 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_aabb(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_aabb(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_aabb(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_aabb(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_aabb(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_aabb(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_arrow(vec3 begin, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_arrow(vec3 begin, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_arrow(vec3 begin, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_arrow(vec3 begin, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_arrow(vec3 begin, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_arrow(vec3 begin, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_boid(vec3 pos, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_boid(vec3 pos, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_boid(vec3 pos, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_boid(vec3 pos, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_boid(vec3 pos, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_boid(vec3 pos, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_bone(vec3 center, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_bone(vec3 center, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_bone(vec3 center, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_bone(vec3 center, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_bone(vec3 center, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_bone(vec3 center, vec3 end);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_bounds(const vec3 points[8]);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_bounds(const vec3 points[8]);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_bounds(const vec3 points[8]);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_box(vec3 center, vec3 extents);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_box(vec3 center, vec3 extents);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_box(vec3 center, vec3 extents);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_box(vec3 center, vec3 extents);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_box(vec3 center, vec3 extents);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_box(vec3 center, vec3 extents);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_capsule(vec3 from, vec3 to, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_capsule(vec3 from, vec3 to, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_capsule(vec3 from, vec3 to, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_capsule(vec3 from, vec3 to, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_capsule(vec3 from, vec3 to, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_capsule(vec3 from, vec3 to, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_circle(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_circle(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_circle(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_circle(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_circle(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_circle(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_ring(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_ring(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_ring(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_ring(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_ring(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_ring(vec3 pos, vec3 n, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_cone(vec3 center, vec3 top, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_cone(vec3 center, vec3 top, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_cone(vec3 center, vec3 top, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_cone(vec3 center, vec3 top, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_cone(vec3 center, vec3 top, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_cone(vec3 center, vec3 top, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_cube(vec3 center, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_cube(vec3 center, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_cube(vec3 center, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_diamond(vec3 from, vec3 to, float size);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_hexagon(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_hexagon(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_hexagon(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_line(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_line(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_line(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_line(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_line(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_line(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_line_dashed(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_line_dashed(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_line_dashed(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_line_dashed(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_line_dashed(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_line_dashed(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_line_thin(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_line_thin(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_line_thin(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_line_thin(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_line_thin(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_line_thin(vec3 from, vec3 to);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_normal(vec3 pos, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_normal(vec3 pos, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_normal(vec3 pos, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_normal(vec3 pos, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_normal(vec3 pos, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_normal(vec3 pos, vec3 n);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_pentagon(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_pentagon(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_pentagon(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_plane(vec3 p, vec3 n, float scale);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_plane(vec3 p, vec3 n, float scale);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_plane(vec3 p, vec3 n, float scale);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_plane(vec3 p, vec3 n, float scale);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_plane(vec3 p, vec3 n, float scale);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_plane(vec3 p, vec3 n, float scale);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_point(vec3 from);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_point(vec3 from);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_point(vec3 from);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_position(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_position(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_position(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_pyramid(vec3 center, float height, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_pyramid(vec3 center, float height, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_pyramid(vec3 center, float height, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_cylinder(vec3 center, float height, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_cylinder(vec3 center, float height, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_cylinder(vec3 center, float height, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_sphere(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_sphere(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_sphere(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_square(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_square(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_square(vec3 pos, float radius);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_text(vec3 pos, float scale, const char *text);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_text(vec3 pos, float scale, const char *text);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_text(vec3 pos, float scale, const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API void ddraw_text2d(vec2 pos, const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC void ddraw_text2d(vec2 pos, const char *text);
//lcpp INF [0000] vec2: macro name but used as C declaration in: void ddraw_text2d(vec2 pos, const char *text);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 position, updir, lookdir;
//lcpp INF [0000] vec2: macro name but used as C declaration in:vec2 last_look; vec3 last_move;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec2 last_look; vec3 last_move;
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void camera_teleport(camera_t *cam, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void camera_teleport(camera_t *cam, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void camera_teleport(camera_t *cam, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void camera_moveby(camera_t *cam, vec3 inc);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void camera_moveby(camera_t *cam, vec3 inc);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void camera_moveby(camera_t *cam, vec3 inc);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void camera_lookat(camera_t *cam, vec3 target);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void camera_lookat(camera_t *cam, vec3 target);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void camera_lookat(camera_t *cam, vec3 target);
//lcpp INF [0000] quat: macro name but used as C declaration in:quat rot;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 sca, pos, euler, pivot;
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void object_rotate(object_t *obj, vec3 euler);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void object_rotate(object_t *obj, vec3 euler);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void object_rotate(object_t *obj, vec3 euler);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void object_pivot(object_t *obj, vec3 euler);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void object_pivot(object_t *obj, vec3 euler);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void object_pivot(object_t *obj, vec3 euler);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void object_teleport(object_t *obj, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void object_teleport(object_t *obj, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void object_teleport(object_t *obj, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void object_move(object_t *obj, vec3 inc);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void object_move(object_t *obj, vec3 inc);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void object_move(object_t *obj, vec3 inc);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API vec3 object_position(object_t *obj);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC vec3 object_position(object_t *obj);
//lcpp INF [0000] vec3: macro name but used as C declaration in: vec3 object_position(object_t *obj);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void object_scale(object_t *obj, vec3 sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void object_scale(object_t *obj, vec3 sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void object_scale(object_t *obj, vec3 sca);
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 diffuse, specular, ambient;
//lcpp INF [0000] vec3: macro name but used as C declaration in:vec3 pos, dir;
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void light_diffuse(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void light_diffuse(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void light_diffuse(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void light_specular(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void light_specular(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void light_specular(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void light_ambient(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void light_ambient(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void light_ambient(light_t* l, vec3 color);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void light_teleport(light_t* l, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void light_teleport(light_t* l, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void light_teleport(light_t* l, vec3 pos);
//lcpp INF [0000] vec3: macro name but used as C declaration in:API void light_dir(light_t* l, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in:STATIC void light_dir(light_t* l, vec3 dir);
//lcpp INF [0000] vec3: macro name but used as C declaration in: void light_dir(light_t* l, vec3 dir);
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 ui_get_dims();
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 ui_get_dims();
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 ui_get_dims();
//lcpp INF [0000] vec2: macro name but used as C declaration in:API vec2 window_canvas();
//lcpp INF [0000] vec2: macro name but used as C declaration in:STATIC vec2 window_canvas();
//lcpp INF [0000] vec2: macro name but used as C declaration in: vec2 window_canvas();
typedef struct FILE FILE;
typedef long int ptrdiff_t;
typedef long unsigned int size_t;
int sort_64(const void *a, const void *b);
int less_64(uint64_t a, uint64_t b);
int less_int(int a, int b);
int less_ptr(void *a, void *b);
int less_str(char *a, char *b);
uint32_t unhash_32(uint32_t x);
uint32_t hash_32(uint32_t x);
uint64_t hash_64(uint64_t x);
uint64_t hash_flt(double x);
uint64_t hash_int(int key);
uint64_t hash_ptr(const void* ptr);
uint64_t hash_bin(const void* ptr, unsigned len);
uint64_t hash_str(const char* str);
uint64_t popcnt64(uint64_t x);
void* vrealloc( void* p, size_t sz );
size_t vlen( void* p );
unsigned array_c_;
unsigned array_n_;
typedef struct set_item {
struct set_item *next;
uint64_t keyhash;
void *key;
void *super;
} set_item;
typedef struct set {
set_item** array;
int (*cmp)(void *, void *);
uint64_t (*hash)(void *);
int count;
} set;
void (set_init)(set *m);
void (set_free)(set *m);
void (set_insert)(set *m, set_item *p, void *key, uint64_t keyhash, void *super);
void (set_erase)(set *m, void *key, uint64_t keyhash);
void* (set_find)(const set *m, void *key, uint64_t keyhash);
int (set_isempty)(const set *m);
int (set_count)(const set *m);
void (set_gc)(set *m);
void (set_clear)(set* m);
typedef struct pair {
struct pair *next;
uint64_t keyhash;
void *key;
void *value;
void *super;
} pair;
typedef struct map {
pair** array;
int (*cmp)(void *, void *);
uint64_t (*hash)(void *);
int count:31;
int is_sorted:1;
pair** sorted;
} map;
void (map_init)(map *m);
void (map_free)(map *m);
void (map_insert)(map *m, pair *p, void *key, void *value, uint64_t keyhash, void *super);
void (map_erase)(map *m, void *key, uint64_t keyhash);
void* (map_find)(map *m, void *key, uint64_t keyhash);
int (map_isempty)(map *m);
int (map_count)(map *m);
void (map_gc)(map *m);
bool (map_sort)(map* m);
void (map_clear)(map* m);
unsigned cc4(const char *id);
uint64_t cc8(const char *id);
char *cc4str(unsigned cc);
char *cc8str(uint64_t cc);
typedef union vec2i{ struct { int X,Y; }; struct { int x,y; }; struct { int r,g; }; struct { int w,h; }; struct { int min,max; }; struct { int from,to; }; struct { int src,dst; }; int v2[2]; int array[1]; } vec2i;
typedef union vec3i{ struct { int X,Y,Z; }; struct { int x,y,z; }; struct { int r,g,b; }; struct { int w,h,d; }; struct { int min,max; }; struct { int from,to,step; }; struct { int src,dst; }; int v3[3]; int array[1]; } vec3i;
typedef union vec2 { struct { float X,Y; }; struct { float x,y; }; struct { float r,g; }; struct { float w,h; }; struct { float min,max; }; struct { float from,to; }; struct { float src,dst; }; float v2[2]; float array[1]; } vec2;
typedef union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; } vec3;
typedef union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; } vec4;
typedef union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; } quat;
typedef float mat33[9];
typedef float mat34[12];
typedef float mat44[16];
void randset(uint64_t state);
uint64_t rand64(void);
double randf(void);
int randi(int mini, int maxi);
float simplex1( float x );
float simplex2( vec2 xy );
float simplex3( vec3 xyz );
float simplex4( vec4 xyzw );
float ease_linear(float t);
float ease_out_sine(float t);
float ease_out_quad(float t);
float ease_out_cubic(float t);
float ease_out_quart(float t);
float ease_out_quint(float t);
float ease_out_expo(float t);
float ease_out_circ(float t);
float ease_out_back(float t);
float ease_out_elastic(float t);
float ease_out_bounce(float t);
float ease_in_sine(float t);
float ease_in_quad(float t);
float ease_in_cubic(float t);
float ease_in_quart(float t);
float ease_in_quint(float t);
float ease_in_expo(float t);
float ease_in_circ(float t);
float ease_in_back(float t);
float ease_in_elastic(float t);
float ease_in_bounce(float t);
float ease_inout_sine(float t);
float ease_inout_quad(float t);
float ease_inout_cubic(float t);
float ease_inout_quart(float t);
float ease_inout_quint(float t);
float ease_inout_expo(float t);
float ease_inout_circ(float t);
float ease_inout_back(float t);
float ease_inout_elastic(float t);
float ease_inout_bounce(float t);
float ease_inout_perlin(float t);
enum EASE_FLAGS {
EASE_LINEAR,
EASE_SINE,
EASE_QUAD,
EASE_CUBIC,
EASE_QUART,
EASE_QUINT,
EASE_EXPO,
EASE_CIRC,
EASE_BACK,
EASE_ELASTIC,
EASE_BOUNCE,
EASE_IN,
EASE_INOUT = EASE_IN * 2,
EASE_OUT = 0,
};
float ease(float t01, unsigned mode);
float ease_ping_pong(float t, float(*fn1)(float), float(*fn2)(float));
float ease_pong_ping(float t, float(*fn1)(float), float(*fn2)(float));
float deg (float radians);
float rad (float degrees);
int mini (int a, int b);
int maxi (int a, int b);
int absi (int a );
int clampi (int v,int a,int b);
float minf (float a, float b);
float maxf (float a, float b);
float absf (float a );
float pmodf (float a, float b);
float signf (float a) ;
float clampf (float v,float a,float b);
float mixf (float a,float b,float t);
float fractf (float a);
vec2 ptr2 (const float *a );
vec2 neg2 (vec2 a );
vec2 add2 (vec2 a, vec2 b);
vec2 sub2 (vec2 a, vec2 b);
vec2 mul2 (vec2 a, vec2 b);
vec2 div2 (vec2 a, vec2 b);
vec2 inc2 (vec2 a, float b);
vec2 dec2 (vec2 a, float b);
vec2 scale2 (vec2 a, float b);
vec2 pmod2 (vec2 a, float b);
vec2 min2 (vec2 a, vec2 b);
vec2 max2 (vec2 a, vec2 b);
vec2 abs2 (vec2 a );
vec2 floor2 (vec2 a );
vec2 fract2 (vec2 a );
vec2 ceil2 (vec2 a );
float dot2 (vec2 a, vec2 b);
vec2 refl2 (vec2 a, vec2 b);
float cross2 (vec2 a, vec2 b);
float len2sq (vec2 a );
float len2 (vec2 a );
vec2 norm2 (vec2 a );
int finite2 (vec2 a );
vec2 mix2 (vec2 a,vec2 b,float t);
vec2 clamp2(vec2 v,vec2 a,vec2 b);
vec2 clamp2f(vec2 v,float a,float b);
vec3 rnd3 (void);
vec3 ptr3 (const float *a );
vec3 vec23 (vec2 a, float z );
vec3 neg3 (vec3 a );
vec3 add3 (vec3 a, vec3 b);
vec3 sub3 (vec3 a, vec3 b);
vec3 mul3 (vec3 a, vec3 b);
vec3 div3 (vec3 a, vec3 b);
vec3 inc3 (vec3 a, float b);
vec3 dec3 (vec3 a, float b);
vec3 scale3 (vec3 a, float b);
vec3 pmod3 (vec3 a, float b);
vec3 min3 (vec3 a, vec3 b);
vec3 max3 (vec3 a, vec3 b);
vec3 abs3 (vec3 a );
vec3 floor3 (vec3 a );
vec3 fract3 (vec3 a );
vec3 ceil3 (vec3 a );
vec3 cross3 (vec3 a, vec3 b);
float dot3 (vec3 a, vec3 b);
vec3 refl3 (vec3 a, vec3 b);
float len3sq (vec3 a );
float len3 (vec3 a );
vec3 norm3 (vec3 a );
vec3 norm3sq (vec3 a );
int finite3 (vec3 a );
vec3 mix3 (vec3 a,vec3 b,float t);
vec3 clamp3(vec3 v,vec3 a,vec3 b);
vec3 clamp3f(vec3 v,float a,float b);
void ortho3 (vec3 *left, vec3 *up, vec3 v);
vec3 rotatex3 (vec3 dir, float degrees);
vec3 rotatey3 (vec3 dir, float degrees);
vec3 rotatez3 (vec3 dir, float degrees);
vec4 ptr4 (const float *a );
vec4 vec34 (vec3 a, float w );
vec4 neg4 (vec4 a );
vec4 add4 (vec4 a, vec4 b);
vec4 sub4 (vec4 a, vec4 b);
vec4 mul4 (vec4 a, vec4 b);
vec4 div4 (vec4 a, vec4 b);
vec4 inc4 (vec4 a, float b);
vec4 dec4 (vec4 a, float b);
vec4 scale4 (vec4 a, float b);
vec4 pmod4 (vec4 a, float b);
vec4 min4 (vec4 a, vec4 b);
vec4 max4 (vec4 a, vec4 b);
vec4 abs4 (vec4 a );
vec4 floor4 (vec4 a );
vec4 fract4 (vec4 a );
vec4 ceil4 (vec4 a );
float dot4 (vec4 a, vec4 b);
vec4 refl4 (vec4 a, vec4 b);
float len4sq (vec4 a );
float len4 (vec4 a );
vec4 norm4 (vec4 a );
vec4 norm4sq (vec4 a );
int finite4 (vec4 a );
vec4 mix4 (vec4 a,vec4 b,float t);
vec4 clamp4(vec4 v,vec4 a,vec4 b);
vec4 clamp4f(vec4 v,float a,float b);
quat idq ( );
quat ptrq (const float *a );
quat vec3q (vec3 a, float w );
quat vec4q (vec4 a );
quat negq (quat a );
quat conjq (quat a );
quat addq (quat a, quat b);
quat subq (quat a, quat b);
quat mulq (quat p, quat q);
quat scaleq (quat a, float s);
quat normq (quat a );
float dotq (quat a, quat b);
quat mixq(quat a, quat b, float t);
quat slerpq(quat a, quat b, float s);
quat rotationq(float deg,float x,float y,float z);
quat mat44q (mat44 M);
vec3 rotate3q_2(vec3 v, quat q);
vec3 rotate3q(vec3 v, quat r);
vec3 euler (quat q);
quat eulerq (vec3 pyr_degrees);
void scaling33(mat33 m, float x, float y, float z);
void scale33(mat33 m, float x, float y, float z);
void id33(mat33 m);
void extract33(mat33 m, const mat44 m4);
void copy33(mat33 m, const mat33 a);
vec3 mulv33(mat33 m, vec3 v);
void multiply33x2(mat33 m, const mat33 a, const mat33 b);
void rotation33(mat33 m, float degrees, float x,float y,float z);
void rotationq33(mat33 m, quat q);
void rotate33(mat33 r, float degrees, float x,float y,float z);
void compose33(mat33 m, quat r, vec3 s);
void id34(mat34 m);
void copy34(mat34 m, const mat34 a);
void scale34(mat34 m, float s);
void add34(mat34 m, mat34 n);
void muladd34(mat34 m, mat34 n, float s);
void add34x2(mat34 m, mat34 n, mat34 o);
void lerp34(mat34 m, mat34 n, mat34 o, float alpha);
void multiply34x2(mat34 m, const mat34 m0, const mat34 m1);
void multiply34(mat34 m, const mat34 a);
void multiply34x3(mat34 m, const mat34 a, const mat34 b, const mat34 c);
void compose34(mat34 m, vec3 t, quat q, vec3 s);
void invert34(mat34 m, const mat34 o);
void id44(mat44 m);
void identity44(mat44 m);
void copy44(mat44 m, const mat44 a);
void multiply44x2(mat44 m, const mat44 a, const mat44 b);
void multiply44x3(mat44 m, const mat44 a, const mat44 b, const mat44 c);
void multiply44(mat44 m, const mat44 a);
void ortho44(mat44 m, float l, float r, float b, float t, float n, float f);
void frustum44(mat44 m, float l, float r, float b, float t, float n, float f);
void perspective44(mat44 m, float fovy_degrees, float aspect, float nearp, float farp);
void lookat44(mat44 m, vec3 eye, vec3 center, vec3 up);
void translation44(mat44 m, float x, float y, float z);
void translate44(mat44 m, float x, float y, float z);
void relocate44(mat44 m, float x, float y, float z);
void rotationq44(mat44 m, quat q);
void rotation44(mat44 m, float degrees, float x, float y, float z);
void rotate44(mat44 m, float degrees, float x, float y, float z);
void scaling44(mat44 m, float x, float y, float z);
void scale44(mat44 m, float x, float y, float z);
void transpose44(mat44 m, const mat44 a);
float det44(const mat44 M);
bool invert44(mat44 T, const mat44 M);
void compose44(mat44 m, vec3 t, quat q, vec3 s);
vec3 transformq(const quat q, const vec3 v);
vec3 transform33(const mat33 m, vec3 p);
vec3 transform344(const mat44 m, const vec3 p);
vec4 transform444(const mat44 m, const vec4 p);
bool unproject44(vec3 *out, vec3 xyd, vec4 viewport, mat44 mvp);
void print2( vec2 v );
void print3( vec3 v );
void print4( vec4 v );
void printq( quat q );
void print33( float *m );
void print34( float *m );
void print44( float *m );
vec2 atof2(const char *s);
vec3 atof3(const char *s);
vec4 atof4(const char *s);
char* ftoa(float f);
char* ftoa2(vec2 v);
char* ftoa3(vec3 v);
char* ftoa4(vec4 v);
void swapf(float *a, float *b);
void swapf2(vec2 *a, vec2 *b);
void swapf3(vec3 *a, vec3 *b);
void swapf4(vec4 *a, vec4 *b);
typedef enum SWARM_DISTANCE {
SWARM_DISTANCE_LINEAR,
SWARM_DISTANCE_INVERSE_LINEAR,
SWARM_DISTANCE_QUADRATIC,
SWARM_DISTANCE_INVERSE_QUADRATIC
} SWARM_DISTANCE;
typedef struct boid_t {
vec3 position;
vec3 velocity;
vec3 acceleration;
vec3 prev_position;
} boid_t;
typedef struct swarm_t {
boid_t* boids;
float perception_radius;
float separation_weight;
SWARM_DISTANCE separation_type;
float alignment_weight;
float cohesion_weight;
float steering_weight;
vec3* steering_targets;
SWARM_DISTANCE steering_target_type;
float blindspot_angledeg;
float max_acceleration;
float max_velocity;
struct { map base; struct { pair p; vec3* key; boid_t** val; } tmp, *ptr; boid_t*** tmpval; int (*typed_cmp)(vec3*, vec3*); uint64_t (*typed_hash)(vec3*); } * voxel_cache_;
float blindspot_angledeg_compare_value_;
} swarm_t;
swarm_t swarm();
void swarm_update(swarm_t *self, float delta);
void swarm_update_acceleration_only(swarm_t *self);
void swarm_update_acceleration_and_velocity_only(swarm_t *self, float delta);
int ui_swarm(swarm_t *self);
int pathfind_astar(int width, int height, const unsigned* map, vec2i src, vec2i dst, vec2i* path, size_t maxpath);
typedef int (*bt_func)();
typedef struct bt_t {
uint64_t type;
int (*action)();
union {
int argi;
float argf;
};
struct bt_t* children;
} bt_t;
bt_t bt(const char *ini_file, unsigned flags);
int bt_run(bt_t *b);
void bt_addfun(const char *name, int(*func)());
bt_func bt_findfun(const char *name);
char *bt_funcname(bt_func fn);
void ui_bt(bt_t *b);
void midi_send(unsigned midi_msg);
typedef struct audio_handle* audio_t;
audio_t audio_clip( const char *pathfile );
audio_t audio_stream( const char *pathfile );
int audio_play( audio_t s, int flags );
int audio_play_gain( audio_t a, int flags, float gain );
int audio_play_gain_pitch( audio_t a, int flags, float gain, float pitch );
int audio_play_gain_pitch_pan( audio_t a, int flags, float gain, float pitch, float pan );
int audio_stop( audio_t a );
float audio_volume_clip(float gain);
float audio_volume_stream(float gain);
float audio_volume_master(float gain);
enum AUDIO_FLAGS {
AUDIO_1CH = 0,
AUDIO_2CH = 1,
AUDIO_8 = 2,
AUDIO_16 = 0,
AUDIO_32 = 4,
AUDIO_FLOAT = 8,
AUDIO_8KHZ = 16,
AUDIO_11KHZ = 32,
AUDIO_22KHZ = 0,
AUDIO_32KHZ = 64,
AUDIO_44KHZ = 128,
AUDIO_MIXER_GAIN = 0,
AUDIO_IGNORE_MIXER_GAIN = 256,
AUDIO_MULTIPLE_INSTANCES = 0,
AUDIO_SINGLE_INSTANCE = 512,
};
int audio_queue( const void *samples, int num_samples, int flags );
typedef struct gjk_support {
int aid, bid;
vec3 a;
vec3 b;
} gjk_support;
typedef struct gjk_vertex {
vec3 a;
vec3 b;
vec3 p;
int aid, bid;
} gjk_vertex;
typedef struct gjk_simplex {
int max_iter, iter;
int hit, cnt;
gjk_vertex v[4];
float bc[4], D;
} gjk_simplex;
typedef struct gjk_result {
int hit;
vec3 p0;
vec3 p1;
float distance_squared;
int iterations;
} gjk_result;
int gjk(gjk_simplex *s, const gjk_support *sup, vec3 *dv);
gjk_result gjk_analyze(const gjk_simplex *s);
gjk_result gjk_quad(float a_radius, float b_radius);
typedef struct line { vec3 a, b; } line;
typedef struct sphere { vec3 c; float r; } sphere;
typedef struct aabb { vec3 min, max; } aabb;
typedef struct plane { vec3 p, n; } plane;
typedef struct capsule { vec3 a, b; float r; } capsule;
typedef struct ray { vec3 p, d; } ray;
typedef struct triangle { vec3 p0,p1,p2; } triangle;
typedef struct poly { vec3* verts; int cnt; } poly;
typedef union frustum { struct { vec4 l, r, t, b, n, f; }; vec4 pl[6]; float v[24]; } frustum;
typedef struct hit {
union {
float depth;
struct { float t0, t1; };
struct { int hits; vec3 p0, p1; float distance2; int iterations; };
};
union { vec3 p; vec3 contact_point; };
union { vec3 n; vec3 normal; };
} hit;
float line_distance2_point(line l, vec3 p);
vec3 line_closest_point(line l, vec3 p);
float ray_test_plane(ray r, vec4 p4);
float ray_test_triangle(ray r, triangle t);
int ray_test_sphere(float *t0, float *t1, ray r, sphere s);
int ray_test_aabb(float *t0, float *t1, ray r, aabb a);
hit* ray_hit_plane(ray r, plane p);
hit* ray_hit_triangle(ray r, triangle t);
hit* ray_hit_sphere(ray r, sphere s);
hit* ray_hit_aabb(ray r, aabb a);
vec3 sphere_closest_point(sphere s, vec3 p);
hit* sphere_hit_aabb(sphere s, aabb a);
hit* sphere_hit_capsule(sphere s, capsule c);
hit* sphere_hit_sphere(sphere a, sphere b);
int sphere_test_aabb(sphere s, aabb a);
int sphere_test_capsule(sphere s, capsule c);
int sphere_test_poly(sphere s, poly p);
int sphere_test_sphere(sphere a, sphere b);
vec3 aabb_closest_point(aabb a, vec3 p);
float aabb_distance2_point(aabb a, vec3 p);
int aabb_contains_point(aabb a, vec3 p);
hit* aabb_hit_aabb(aabb a, aabb b);
hit* aabb_hit_capsule(aabb a, capsule c);
hit* aabb_hit_sphere(aabb a, sphere s);
int aabb_test_aabb(aabb a, aabb b);
int aabb_test_capsule(aabb a, capsule c);
int aabb_test_poly(aabb a, poly p);
int aabb_test_sphere(aabb a, sphere s);
float capsule_distance2_point(capsule c, vec3 p);
vec3 capsule_closest_point(capsule c, vec3 p);
hit* capsule_hit_aabb(capsule c, aabb a);
hit* capsule_hit_capsule(capsule a, capsule b);
hit* capsule_hit_sphere(capsule c, sphere s);
int capsule_test_aabb(capsule c, aabb a);
int capsule_test_capsule(capsule a, capsule b);
int capsule_test_poly(capsule c, poly p);
int capsule_test_sphere(capsule c, sphere s);
int poly_test_sphere(poly p, sphere s);
int poly_test_aabb(poly p, aabb a);
int poly_test_capsule(poly p, capsule c);
int poly_test_poly(poly a, poly b);
int poly_test_sphere_transform(poly p, vec3 pos3, mat33 rot33, sphere s);
int poly_test_aabb_transform(poly p, vec3 apos3, mat33 arot33, aabb a);
int poly_test_capsule_transform(poly p, vec3 pos3, mat33 rot33, capsule c);
int poly_test_poly_transform(poly a, vec3 apos3, mat33 arot33, poly b, vec3 bpos3, mat33 brot33);
int poly_hit_sphere(struct gjk_result *res, poly p, sphere s);
int poly_hit_aabb(struct gjk_result *res, poly p, aabb a);
int poly_hit_capsule(struct gjk_result *res, poly p, capsule c);
int poly_hit_poly(struct gjk_result *res, poly a, poly b);
int poly_hit_sphere_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, sphere s);
int poly_hit_aabb_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, aabb a);
int poly_hit_capsule_transform(struct gjk_result *res, poly p, vec3 pos3, mat33 rot33, capsule c);
int poly_hit_poly_transform(struct gjk_result *res, poly a, vec3 at3, mat33 ar33, poly b, vec3 bt3, mat33 br33);
vec4 plane4(vec3 p, vec3 n);
frustum frustum_build(mat44 projview);
int frustum_test_sphere(frustum f, sphere s);
int frustum_test_aabb(frustum f, aabb a);
poly poly_alloc(int cnt);
void poly_free(poly *p);
poly pyramid(vec3 from, vec3 to, float size);
poly diamond(vec3 from, vec3 to, float size);
void collide_demo();
enum COOK_FLAGS {
COOK_SYNC = 0,
COOK_ASYNC = 1,
COOK_CANCELABLE = 2,
COOK_DEBUGLOG = 4,
};
void cook_config( const char *path_to_cook_ini );
bool cook_start( const char *path_to_cook_ini, const char *masks, int flags );
void cook_stop();
void cook_cancel();
int cook_jobs();
int cook_progress();
typedef union json_t { char* s; double f; int64_t i; uintptr_t p; union json_t* arr; } json_t;
bool json_push(const char *json_content);
const char* json_key(const char *keypath);
json_t* json_find(const char *type_keypath);
json_t json_get(const char *type_keypath);
int json_count(const char *keypath);
bool json_pop();
int xml_push(const char *xml_content);
const char * xml_string(char *key);
unsigned xml_count(char *key);
char* xml_blob(char *key);
void xml_pop();
bool data_tests();
enum COMPRESS_FLAGS {
COMPRESS_RAW = 0,
COMPRESS_PPP = (1<<4),
COMPRESS_ULZ = (2<<4),
COMPRESS_LZ4 = (3<<4),
COMPRESS_CRUSH = (4<<4),
COMPRESS_DEFLATE = (5<<4),
COMPRESS_LZP1 = (6<<4),
COMPRESS_LZMA = (7<<4),
COMPRESS_BALZ = (8<<4),
COMPRESS_LZW3 = (9<<4),
COMPRESS_LZSS = (10<<4),
COMPRESS_BCM = (11<<4),
COMPRESS_ZLIB = (12<<4),
};
unsigned zbounds(unsigned inlen, unsigned flags);
unsigned zencode(void *out, unsigned outlen, const void *in, unsigned inlen, unsigned flags);
unsigned zexcess(unsigned flags);
unsigned zdecode(void *out, unsigned outlen, const void *in, unsigned inlen, unsigned flags);
void* dll(const char *filename, const char *symbol);
vec3 editor_pick(float mouse_x, float mouse_y);
char* editor_path(const char *path);
char* dialog_load();
char* dialog_save();
int gizmo(vec3 *pos, vec3 *rot, vec3 *sca);
bool gizmo_active();
bool gizmo_hover();
void kit_locale( const char *langcode_iso639_1 );
void kit_set( const char *variable, const char *value );
void kit_reset();
void kit_insert( const char *id, const char *translation );
bool kit_load( const char *filename );
bool kit_merge( const char *filename );
void kit_clear();
char* kit_translate( const char *id );
char* kit_translate2( const char *id, const char *langcode_iso639_1 );
void kit_dump_state( FILE *fp );
const char** file_list(const char *path, const char *masks);
bool file_write( const char *file, const void *ptr, int len );
bool file_append( const char *file, const void *ptr, int len );
char * file_read(const char *filename);
char * file_load(const char *filename, int *len);
uint64_t file_size(const char *pathfile);
bool file_directory(const char *pathfile);
char * file_pathabs(const char *pathfile);
char * file_path(const char *pathfile);
char * file_name(const char *pathfile);
char * file_base(const char *pathfile);
char * file_ext(const char *pathfile);
char * file_id(const char *pathfile);
char * file_normalize(const char *pathfile);
char * file_counter(const char *pathfile);
uint64_t file_stamp(const char *pathfile);
uint64_t file_stamp10(const char *pathfile);
bool file_exist(const char *pathfile);
bool file_delete(const char *pathfile);
bool file_copy(const char *src, const char *dst);
bool file_move(const char *src, const char *dst);
FILE* file_temp();
char* file_tempname();
void* file_md5(const char *file);
void* file_sha1(const char *file);
void* file_crc32(const char *file);
char** file_zip_list(const char *zipfile);
char* file_zip_extract(const char *zipfile, const char *filename);
bool file_zip_append(const char *zipfile, const char *filename, int clevel);
bool file_zip_appendmem(const char *zipfile, const char *entryname, const void *ptr, unsigned len, int clevel);
void storage_mount(const char* folder);
void storage_read();
void storage_flush();
bool vfs_mount(const char *mount_point);
const char** vfs_list(const char *masks);
char * vfs_read(const char *pathfile);
char * vfs_load(const char *pathfile, int *size);
int vfs_size(const char *pathfile);
const char * vfs_resolve(const char *fuzzyname);
FILE* vfs_handle(const char *pathfile);
void * cache_insert(const char *key, void *value, int size);
void * cache_lookup(const char *key, int *size);
typedef struct { map base; struct { pair p; char* key; char* val; } tmp, *ptr; char** tmpval; int (*typed_cmp)(char*, char*); uint64_t (*typed_hash)(char*); } * ini_t;
ini_t ini(const char *filename);
ini_t ini_from_mem(const char *data);
void ini_destroy(ini_t);
bool ini_write(const char *filename, const char *section, const char *key, const char *value);
enum FONT_FLAGS {
FONT_512 =0,
FONT_1024 =1,
FONT_2048 =2,
FONT_4096 =4,
FONT_NO_OVERSAMPLE =0,
FONT_OVERSAMPLE_X =8,
FONT_OVERSAMPLE_Y =16,
FONT_ASCII =2048,
FONT_AR =4096,
FONT_ZH =8192,
FONT_EL =16384,
FONT_EM =32768,
FONT_EU =65536,
FONT_HE =131072,
FONT_JP =262144,
FONT_KR =524288,
FONT_RU =1048576,
FONT_TH =2097152,
FONT_VI =4194304,
FONT_CJK = FONT_ZH|FONT_JP|FONT_KR,
};
void font_face(const char *face_tag, const char *filename_ttf, float font_size, unsigned flags);
void font_face_from_mem(const char *tag, const void *ttf_buffer, unsigned ttf_len, float font_size, unsigned flags);
void font_scales(const char *face_tag, float h1, float h2, float h3, float h4, float h5, float h6);
void font_color(const char *color_tag, uint32_t color);
vec2 font_xy();
void font_goto(float x, float y);
vec2 font_print(const char *text);
vec2 font_rect(const char *text);
void* font_colorize(const char *text, const char *comma_types, const char *comma_keywords);
vec2 font_highlight(const char *text, const void *colors);
int input_use( int controller_id );
float input( int vk );
vec2 input2( int vk );
float input_diff( int vk );
vec2 input_diff2( int vk );
const char* input_string( int vk );
float input_frame( int vk, int Nth_frame );
vec2 input_frame2( int vk, int Nth_frame );
int input_up( int vk );
int input_down( int vk );
int input_held( int vk );
int input_idle( int vk );
int input_click( int vk, int ms );
int input_click2( int vk, int ms );
int input_repeat( int vk, int ms );
int input_chord2( int vk1, int vk2 );
int input_chord3( int vk1, int vk2, int vk3 );
int input_chord4( int vk1, int vk2, int vk3, int vk4 );
float input_filter_positive( float v );
vec2 input_filter_positive2( vec2 v );
vec2 input_filter_deadzone( vec2 v, float deadzone_treshold );
vec2 input_filter_deadzone_4way( vec2 v, float deadzone_treshold );
enum TOUCH_BUTTONS {
TOUCH_0,
TOUCH_1,
};
void input_touch_area(unsigned button, vec2 begin_coord_ndc, vec2 end_coord_ndc);
vec2 input_touch(unsigned button, float sensitivity);
vec2 input_touch_delta(unsigned button, float sensitivity);
vec2 input_touch_delta_from_origin(unsigned button, float sensitivity);
bool input_touch_active();
void input_mappings(const char *filename);
char input_keychar(unsigned code);
int input_anykey();
void input_send( int vk );
char* save_input();
bool load_input(char* replay);
int ui_keyboard();
int ui_mouse();
int ui_gamepad(int id);
int ui_gamepads();
enum INPUT_ENUMS {
KEY_ESC,
KEY_TICK, KEY_1,KEY_2,KEY_3,KEY_4,KEY_5,KEY_6,KEY_7,KEY_8,KEY_9,KEY_0, KEY_BS,
KEY_TAB, KEY_Q,KEY_W,KEY_E,KEY_R,KEY_T,KEY_Y,KEY_U,KEY_I,KEY_O,KEY_P,
KEY_CAPS, KEY_A,KEY_S,KEY_D,KEY_F,KEY_G,KEY_H,KEY_J,KEY_K,KEY_L, KEY_ENTER,
KEY_LSHIFT, KEY_Z,KEY_X,KEY_C,KEY_V,KEY_B,KEY_N,KEY_M, KEY_RSHIFT, KEY_UP,
KEY_LCTRL,KEY_LALT, KEY_SPACE, KEY_RALT,KEY_RCTRL, KEY_LEFT,KEY_DOWN,KEY_RIGHT,
KEY_INS,KEY_HOME,KEY_PGUP,KEY_DEL,KEY_END,KEY_PGDN,
KEY_LMETA,KEY_RMETA,KEY_MENU,KEY_PRINT,KEY_PAUSE,KEY_SCROLL,KEY_NUMLOCK,
KEY_MINUS,KEY_EQUAL,KEY_LSQUARE,KEY_RSQUARE,KEY_SEMICOLON,KEY_QUOTE,KEY_HASH,KEY_BAR,KEY_COMMA,KEY_DOT,KEY_SLASH,
KEY_F1,KEY_F2,KEY_F3,KEY_F4,KEY_F5,KEY_F6,KEY_F7,KEY_F8,KEY_F9,KEY_F10,KEY_F11,KEY_F12,
KEY_PAD1,KEY_PAD2,KEY_PAD3,KEY_PAD4,KEY_PAD5,KEY_PAD6,KEY_PAD7,KEY_PAD8,KEY_PAD9,KEY_PAD0,
KEY_PADADD,KEY_PADSUB,KEY_PADMUL,KEY_PADDIV,KEY_PADDOT,KEY_PADENTER,
MOUSE_L, MOUSE_M, MOUSE_R,
GAMEPAD_CONNECTED, GAMEPAD_A, GAMEPAD_B, GAMEPAD_X, GAMEPAD_Y,
GAMEPAD_UP, GAMEPAD_DOWN, GAMEPAD_LEFT, GAMEPAD_RIGHT, GAMEPAD_MENU, GAMEPAD_START,
GAMEPAD_LB, GAMEPAD_RB, GAMEPAD_LTHUMB, GAMEPAD_RTHUMB,
WINDOW_BLUR, WINDOW_FOCUS, WINDOW_CLOSE, WINDOW_MINIMIZE, WINDOW_MAXIMIZE, WINDOW_FULLSCREEN, WINDOW_WINDOWED,
GAMEPAD_LPAD, GAMEPAD_LPADX = GAMEPAD_LPAD, GAMEPAD_LPADY,
GAMEPAD_RPAD, GAMEPAD_RPADX = GAMEPAD_RPAD, GAMEPAD_RPADY,
GAMEPAD_LTRIGGER, GAMEPAD_LT = GAMEPAD_LTRIGGER, GAMEPAD_RTRIGGER, GAMEPAD_RT = GAMEPAD_RTRIGGER, GAMEPAD_BATTERY,
MOUSE, MOUSE_X = MOUSE, MOUSE_Y, MOUSE_W,
TOUCH_X1, TOUCH_Y1, TOUCH_X2, TOUCH_Y2,
WINDOW_RESIZE, WINDOW_RESIZEX = WINDOW_RESIZE, WINDOW_RESIZEY, WINDOW_ORIENTATION, WINDOW_BATTERY,
GAMEPAD_GUID, GAMEPAD_NAME,
};
void* xrealloc(void* p, size_t sz);
size_t xsize(void* p);
char* xstats(void);
void* stack(int bytes);
void* watch( void *ptr, int sz );
void* forget( void *ptr );
inline void *(REALLOC_)(void *p, size_t n) { return n ? (xrealloc(p,n)) : xrealloc((p),0); }
inline void *(CALLOC_)(size_t m, size_t n) { return n *= m, memset(REALLOC_((0),(n)),0,n); }
inline char *(STRDUP_)(const char *s) { size_t n = strlen(s)+1; return ((char*)memcpy(REALLOC_((0),(n)), s, n)); }
char* download( const char *url );
int download_file( FILE *out, const char *url );
int portname( const char *service_name, unsigned retries );
bool network_tests();
int udp_bind(const char *address, const char *port);
int udp_open(const char *address, const char *port);
int udp_send(int, const void *buf, int len );
int udp_sendto(int, const char *ip, const char *port, const void *buf, int len );
int udp_recv(int, void *buf, int len );
int udp_peek(int);
int tcp_open(const char *address, const char *port);
int tcp_bind(const char *interface_, const char *port, int queue);
int tcp_peek(int, int(*callback)(int));
int tcp_send(int, const void* buf, int len);
int tcp_recv(int, void* buf, int len);
char* tcp_host(int);
char* tcp_port(int);
int tcp_close(int);
int tcp_debug(int);
enum { NETWORK_BIND = 2, NETWORK_CONNECT = 4, NETWORK_NOFAIL = 8 };
void network_create(unsigned max_clients, const char *ip, const char *port, unsigned flags);
enum { NETWORK_SEND = 2, NETWORK_RECV = 4 };
enum { NETWORK_UNRELIABLE = 8, NETWORK_UNORDERED = 16 };
void* network_buffer(void *ptr, unsigned sz, uint64_t flags, int64_t rank);
char** network_sync(unsigned timeout_ms);
enum {
NETWORK_EVENT_CONNECT,
NETWORK_EVENT_DISCONNECT,
NETWORK_EVENT_RECEIVE,
NETWORK_EVENT_DISCONNECT_TIMEOUT,
NETWORK_EVENT_RPC = 10,
NETWORK_EVENT_RPC_RESP,
};
int network_event(const char *msg, int *errcode, char **errstr);
enum { NETWORK_RANK = 0 };
enum { NETWORK_PING = 1 };
enum { NETWORK_PORT = 2, NETWORK_IP, NETWORK_LIVE };
enum { NETWORK_SEND_MS = 4 };
enum { NETWORK_BUF_CLEAR_ON_JOIN = 5 };
enum { NETWORK_USERID = 7, NETWORK_COUNT , NETWORK_CAPACITY };
int64_t network_get(uint64_t key);
int64_t network_put(uint64_t key, int64_t value);
void network_rpc(const char *signature, void *function);
void network_rpc_send_to(int64_t rank, unsigned id, const char *cmdline);
void network_rpc_send(unsigned id, const char *cmdline);
bool server_bind(int max_clients, int port);
char** server_poll(unsigned timeout_ms);
char** client_poll(unsigned timeout_ms);
void server_broadcast_bin_flags(const void *ptr, int len, uint64_t flags);
void server_broadcast_bin(const void *ptr, int len);
void server_broadcast_flags(const char *msg, uint64_t flags);
void server_broadcast(const char *msg);
void server_terminate();
void server_send(int64_t handle, const char *msg);
void server_send_bin(int64_t handle, const void *ptr, int len);
void server_drop(int64_t handle);
int64_t client_join(const char *ip, int port);
void* obj_malloc( int sz, ... );
void* obj_calloc( int sz, ... );
void obj_free( void *obj );
bool obj_typeeq( const void *obj1, const void *obj2 );
const char* obj_typeof( const void *obj );
unsigned obj_typeid( const void *obj );
unsigned obj_typeid_from_name( const char *name );
void obj_new( const char *type, ... );
void obj_del( void *obj );
void* obj_ref( void *obj );
void* obj_unref( void *obj );
void obj_extend( const char *dstclass, const char *srcclass );
void obj_override( const char *objclass, void (**vtable)(), void(*fn)() );
unsigned obj_load(void *obj, const char* buffer);
unsigned obj_load_file(void *obj, FILE *fp);
unsigned obj_load_inplace(void *obj, const void *src, unsigned srclen);
char* obj_save(const void *obj);
unsigned obj_save_file(FILE *fp, const void *obj);
unsigned obj_save_inplace(void *dst, unsigned cap, const void *obj);
unsigned obj_instances( const void *obj );
void obj_zero( void *obj );
unsigned obj_sizeof( const void *obj );
void obj_hexdump( const void *obj );
void obj_hexdumpf( FILE *out, const void *obj );
void obj_printf( void *obj, const char *text );
const char* obj_output( const void *obj );
void * obj_clone(const void *obj);
void * obj_copy(void **dst, const void *src);
void * obj_mutate(void **dst, const void *src);
extern void (*ctor[256])();
extern void (*dtor[256])();
void* obj_initialize( void **ptr, char *type_and_info );
void *obj_tmpalloc;
int profiler_enable(bool on);
struct profile_t { double stat; int32_t cost, avg; };
typedef struct { map base; struct { pair p; char * key; struct profile_t val; } tmp, *ptr; struct profile_t* tmpval; int (*typed_cmp)(char *, char *); uint64_t (*typed_hash)(char *); } * profiler_t;
extern profiler_t profiler;
extern int profiler_enabled;
typedef unsigned handle;
unsigned rgba( uint8_t r, uint8_t g, uint8_t b, uint8_t a );
unsigned bgra( uint8_t b, uint8_t g, uint8_t r, uint8_t a );
unsigned rgbaf( float r, float g, float b, float a );
unsigned bgraf( float b, float g, float r, float a );
float alpha( unsigned rgba );
enum IMAGE_FLAGS {
IMAGE_R =4096,
IMAGE_RG =8192,
IMAGE_RGB =16384,
IMAGE_RGBA =32768,
IMAGE_FLIP =65536,
IMAGE_FLOAT =131072,
};
typedef struct image_t {
union { unsigned x, w; };
union { unsigned y, h; };
union { unsigned n, comps; };
union { void *pixels; uint8_t *pixels8; uint16_t *pixels16; uint32_t *pixels32; float *pixelsf; };
} image_t;
image_t image(const char *pathfile, int flags);
image_t image_from_mem(const void *ptr, int len, int flags);
void image_destroy(image_t *img);
enum TEXTURE_FLAGS {
TEXTURE_BC1 = 8,
TEXTURE_BC2 = 16,
TEXTURE_BC3 = 32,
TEXTURE_NEAREST = 0,
TEXTURE_LINEAR = 64,
TEXTURE_MIPMAPS = 128,
TEXTURE_CLAMP = 0,
TEXTURE_BORDER =256,
TEXTURE_REPEAT =512,
TEXTURE_BYTE = 0,
TEXTURE_FLOAT = IMAGE_FLOAT,
TEXTURE_COLOR = 0,
TEXTURE_DEPTH =2048,
TEXTURE_R = IMAGE_R,
TEXTURE_RG = IMAGE_RG,
TEXTURE_RGB = IMAGE_RGB,
TEXTURE_RGBA = IMAGE_RGBA,
TEXTURE_FLIP = IMAGE_FLIP,
TEXTURE_SRGB = 1 << 24,
TEXTURE_BGR = 1 << 25,
TEXTURE_ARRAY = 1 << 26,
};
typedef struct texture_t {
union { unsigned x, w; };
union { unsigned y, h; };
union { unsigned z, d; };
union { unsigned n, bpp; };
handle id, unit;
unsigned texel_type;
unsigned flags;
char* filename;
bool transparent;
unsigned fbo;
} texture_t;
texture_t texture_compressed(const char *filename, unsigned flags);
texture_t texture_compressed_from_mem(const void *data, int len, unsigned flags);
texture_t texture(const char* filename, int flags);
texture_t texture_from_mem(const void* ptr, int len, int flags);
texture_t texture_create(unsigned w, unsigned h, unsigned n, const void *pixels, int flags);
texture_t texture_checker();
void texture_destroy(texture_t *t);
unsigned texture_update(texture_t *t, unsigned w, unsigned h, unsigned n, const void *pixels, int flags);
bool texture_rec_begin(texture_t *t, unsigned w, unsigned h);
void texture_rec_end(texture_t *t);
texture_t brdf_lut();
typedef struct colormap_t {
vec4 color;
texture_t *texture;
} colormap_t;
bool colormap( colormap_t *cm, const char *pbr_material_type, bool load_as_srgb );
typedef struct pbr_material_t {
char* name;
colormap_t diffuse;
colormap_t normals;
colormap_t specular;
colormap_t albedo;
colormap_t roughness;
colormap_t metallic;
colormap_t ao;
colormap_t ambient;
colormap_t emissive;
float specular_shininess;
} pbr_material_t;
bool pbr_material(pbr_material_t *pbr, const char *material);
void pbr_material_destroy(pbr_material_t *m);
void fullscreen_quad_rgb( texture_t texture_rgb, float gamma );
void fullscreen_quad_rgb_flipped( texture_t texture, float gamma );
void fullscreen_quad_ycbcr( texture_t texture_YCbCr[3], float gamma );
void fullscreen_quad_ycbcr_flipped( texture_t texture_YCbCr[3], float gamma );
void sprite( texture_t texture, float position[3], float rotation , uint32_t color );
void sprite_rect( texture_t t, vec4 rect, float zindex, vec3 pos, float tilt_deg, unsigned tint_rgba);
void sprite_sheet( texture_t texture, float sheet[3], float position[3], float rotation, float offset[2], float scale[2], int is_additive, uint32_t rgba, int resolution_independant);
void sprite_flush();
typedef struct tileset_t {
texture_t tex;
unsigned tile_w, tile_h;
unsigned cols, rows;
unsigned selected;
} tileset_t;
tileset_t tileset(texture_t tex, unsigned tile_w, unsigned tile_h, unsigned cols, unsigned rows);
int tileset_ui( tileset_t t );
typedef struct tilemap_t {
int blank_chr;
unsigned cols, rows;
int* map;
vec3 position;
float zindex;
float tilt;
unsigned tint;
bool is_additive;
} tilemap_t;
tilemap_t tilemap(const char *map, int blank_chr, int linefeed_chr);
void tilemap_render( tilemap_t m, tileset_t style );
void tilemap_render_ext( tilemap_t m, tileset_t style, float zindex, float xy_zoom[3], float tilt, unsigned tint, bool is_additive );
typedef struct tiled_t {
char *map_name;
unsigned first_gid, tilew, tileh, w, h;
bool parallax;
vec3 position;
bool* visible;
tilemap_t* layers;
tileset_t* sets;
char** names;
} tiled_t;
tiled_t tiled(const char *file_tmx);
void tiled_render(tiled_t tmx, vec3 pos);
void tiled_ui(tiled_t *t);
typedef struct spine_t spine_t;
spine_t*spine(const char *file_json, const char *file_atlas, unsigned flags);
void spine_skin(spine_t *p, unsigned skin);
void spine_render(spine_t *p, vec3 offset, unsigned flags);
void spine_animate(spine_t *p, float delta);
void spine_ui(spine_t *p);
typedef struct cubemap_t {
unsigned id;
vec3 sh[9];
} cubemap_t;
cubemap_t cubemap( const image_t image, int flags );
cubemap_t cubemap6( const image_t images[6], int flags );
void cubemap_destroy(cubemap_t *c);
cubemap_t* cubemap_get_active();
unsigned fbo( unsigned texture_color, unsigned texture_depth, int wr_flags );
void fbo_bind(unsigned id);
void fbo_unbind();
void fbo_destroy(unsigned id);
typedef struct shadowmap_t {
mat44 shadowmatrix;
mat44 mvp;
mat44 mv;
mat44 proj;
vec4 light_position;
int saved_fb;
int saved_viewport[4];
handle fbo, texture;
int texture_width;
} shadowmap_t;
shadowmap_t shadowmap(int texture_width);
void shadowmap_destroy(shadowmap_t *s);
void shadowmap_set_shadowmatrix(shadowmap_t *s, vec3 aLightPos, vec3 aLightAt, vec3 aLightUp, const mat44 projection);
void shadowmap_begin(shadowmap_t *s);
void shadowmap_end(shadowmap_t *s);
void shadowmatrix_proj(mat44 shm_proj, float aLightFov, float znear, float zfar);
void shadowmatrix_ortho(mat44 shm_proj, float left, float right, float bottom, float top, float znear, float zfar);
unsigned shader(const char *vs, const char *fs, const char *attribs, const char *fragcolor, const char *defines);
unsigned shader_geom(const char *gs, const char *vs, const char *fs, const char *attribs, const char *fragcolor, const char *defines);
unsigned shader_bind(unsigned program);
void shader_bool(const char *uniform, bool i );
void shader_int(const char *uniform, int i);
void shader_uint(const char *uniform, unsigned i );
void shader_float(const char *uniform, float f);
void shader_vec2(const char *uniform, vec2 v);
void shader_vec3(const char *uniform, vec3 v);
void shader_vec3v(const char *uniform, int count, vec3 *v);
void shader_vec4(const char *uniform, vec4 v);
void shader_mat44(const char *uniform, mat44 m);
void shader_texture(const char *sampler, texture_t texture);
void shader_texture_unit(const char *sampler, unsigned texture, unsigned unit);
void shader_colormap(const char *name, colormap_t cm);
unsigned shader_get_active();
void shader_destroy(unsigned shader);
unsigned shader_properties(unsigned shader);
char** shader_property(unsigned shader, unsigned property_no);
void shader_apply_param(unsigned shader, unsigned param_no);
void shader_apply_params(unsigned shader, const char *parameter_mask);
int ui_shader(unsigned shader);
int ui_shaders();
enum BUFFER_MODE {
BUFFER_READ,
BUFFER_WRITE,
BUFFER_READ_WRITE
};
unsigned compute(const char *cs);
void compute_dispatch(unsigned wx, unsigned wy, unsigned wz);
void shader_image(texture_t t, unsigned unit, unsigned level, int layer, unsigned access);
void shader_image_unit(unsigned texture, unsigned unit, unsigned level, int layer, unsigned texel_type, unsigned access);
void write_barrier();
void write_barrier_image();
enum SSBO_USAGE {
STATIC_DRAW,
STATIC_READ,
STATIC_COPY,
DYNAMIC_DRAW,
DYNAMIC_READ,
DYNAMIC_COPY,
STREAM_DRAW,
STREAM_READ,
STREAM_COPY
};
enum SSBO_ACCESS {
SSBO_READ = BUFFER_READ,
SSBO_WRITE = BUFFER_WRITE,
SSBO_READ_WRITE = BUFFER_READ_WRITE
};
unsigned ssbo_create(const void *data, int len, unsigned usage);
void ssbo_destroy(unsigned ssbo);
void ssbo_update(int offset, int len, const void *data);
void ssbo_bind(unsigned ssbo, unsigned unit);
void *ssbo_map(unsigned access);
void ssbo_unmap();
void ssbo_unbind();
enum MESH_FLAGS {
MESH_STATIC = 0,
MESH_STREAM = 1,
MESH_TRIANGLE_STRIP = 2,
};
typedef struct mesh_t {
handle vao, vbo, ibo;
unsigned vertex_count;
unsigned index_count;
unsigned flags;
int* lod_collapse_map;
union {
unsigned* in_index;
vec3i* in_index3;
};
union {
unsigned* out_index;
vec3i* out_index3;
};
union {
float* in_vertex;
vec3* in_vertex3;
};
union {
float* out_vertex;
vec3* out_vertex3;
};
} mesh_t;
mesh_t mesh();
void mesh_update(mesh_t *m, const char *format, int vertex_stride,int vertex_count,const void *interleaved_vertex_data, int index_count,const void *index_data, int flags);
void mesh_render(mesh_t *m);
void mesh_render_prim(mesh_t *sm, unsigned prim);
void mesh_destroy(mesh_t *m);
aabb mesh_bounds(mesh_t *m);
enum MATERIAL_ENUMS {
MAX_CHANNELS_PER_MATERIAL = 8
};
typedef struct material_t {
char *name;
int count;
struct material_layer_t {
char texname[32];
handle texture;
float value;
vec4 color;
} layer[MAX_CHANNELS_PER_MATERIAL];
} material_t;
enum {
SHADERTOY_FLIP_Y = 2,
SHADERTOY_IGNORE_FBO = 4,
SHADERTOY_IGNORE_MOUSE = 8,
};
typedef struct shadertoy_t {
handle vao, program;
int uniforms[32];
int texture_channels[4];
int frame;
float clickx, clicky;
uint64_t t;
texture_t tx;
vec2i dims;
int flags;
} shadertoy_t;
shadertoy_t shadertoy( const char *shaderfile, unsigned flags );
shadertoy_t* shadertoy_render( shadertoy_t *s, float delta );
enum ANIM_FLAGS {
ANIM_LOOP = 1,
ANIM_DONT_RESET_AFTER_USE = 2,
};
typedef struct anim_t {
int from;
int to;
float blendtime;
unsigned flags;
float curframe;
unsigned easing;
float alpha;
float timer;
bool active;
vec3 pose;
char* name;
} anim_t;
anim_t clip(float minframe, float maxframe, float blendtime, unsigned flags);
anim_t loop(float minframe, float maxframe, float blendtime, unsigned flags);
enum MODEL_FLAGS {
MODEL_NO_ANIMATIONS = 1,
MODEL_NO_MESHES = 2,
MODEL_NO_TEXTURES = 4,
MODEL_MATCAPS = 8,
MODEL_RIMLIGHT = 16
};
typedef struct model_t {
struct iqm_t *iqm;
unsigned num_textures;
handle *textures;
char **texture_names;
material_t* materials;
unsigned num_meshes;
unsigned num_triangles;
unsigned num_joints;
unsigned num_anims;
unsigned num_frames;
handle program;
float curframe;
mat44 pivot;
int stride;
void *verts;
int num_verts;
handle vao, ibo, vbo, vao_instanced;
unsigned flags;
unsigned billboard;
float *instanced_matrices;
unsigned num_instances;
} model_t;
model_t model(const char *filename, int flags);
model_t model_from_mem(const void *mem, int sz, int flags);
float model_animate(model_t, float curframe);
float model_animate_clip(model_t, float curframe, int minframe, int maxframe, bool loop);
float model_animate_blends(model_t m, anim_t *primary, anim_t *secondary, float delta);
aabb model_aabb(model_t, mat44 transform);
void model_render(model_t, mat44 proj, mat44 view, mat44 model, int shader);
void model_render_skeleton(model_t, mat44 model);
void model_render_instanced(model_t, mat44 proj, mat44 view, mat44 *models, int shader, unsigned count);
void model_set_texture(model_t, texture_t t);
bool model_get_bone_pose(model_t m, unsigned joint, mat34 *out);
void model_destroy(model_t);
vec3 pose(bool forward, float curframe, int minframe, int maxframe, bool loop, float *opt_retframe);
typedef struct anims_t {
int inuse;
float speed;
anim_t* anims;
} anims_t;
anims_t animations(const char *pathfile, int flags);
typedef struct skybox_t {
handle program;
mesh_t geometry;
cubemap_t cubemap;
int flags;
int framebuffers[6];
int textures[6];
float *pixels;
} skybox_t;
skybox_t skybox(const char *panorama_or_cubemap_folder, int flags);
int skybox_render(skybox_t *sky, mat44 proj, mat44 view);
void skybox_destroy(skybox_t *sky);
void skybox_mie_calc_sh(skybox_t *sky, float sky_intensity);
void skybox_sh_reset(skybox_t *sky);
void skybox_sh_add_light(skybox_t *sky, vec3 light, vec3 dir, float strength);
int skybox_push_state(skybox_t *sky, mat44 proj, mat44 view);
int skybox_pop_state();
void viewport_clear(bool color, bool depth);
void viewport_clip(vec2 from, vec2 to);
int fx_load(const char *file);
int fx_load_from_mem(const char *nameid, const char *content);
void fx_begin();
void fx_begin_res(int w, int h);
void fx_end();
void fx_enable(int pass, int enabled);
int fx_enabled(int pass);
void fx_enable_all(int enabled);
char * fx_name(int pass);
int fx_find(const char *name);
int ui_fx(int pass);
int ui_fxs();
void* screenshot(int components);
void* screenshot_async(int components);
void ddraw_color(unsigned rgb);
void ddraw_color_push(unsigned rgb);
void ddraw_color_pop();
void ddraw_ontop(int enabled);
void ddraw_ontop_push(int enabled);
void ddraw_ontop_pop();
void ddraw_push_2d();
void ddraw_pop_2d();
void ddraw_aabb(vec3 minbb, vec3 maxbb);
void ddraw_aabb_corners(vec3 minbb, vec3 maxbb);
void ddraw_arrow(vec3 begin, vec3 end);
void ddraw_axis(float units);
void ddraw_boid(vec3 pos, vec3 dir);
void ddraw_bone(vec3 center, vec3 end);
void ddraw_bounds(const vec3 points[8]);
void ddraw_box(vec3 center, vec3 extents);
void ddraw_capsule(vec3 from, vec3 to, float radius);
void ddraw_circle(vec3 pos, vec3 n, float radius);
void ddraw_ring(vec3 pos, vec3 n, float radius);
void ddraw_cone(vec3 center, vec3 top, float radius);
void ddraw_cube(vec3 center, float radius);
void ddraw_cube33(vec3 center, vec3 radius, mat33 M);
void ddraw_diamond(vec3 from, vec3 to, float size);
void ddraw_frustum(float projview[16]);
void ddraw_ground(float scale);
void ddraw_grid(float scale);
void ddraw_hexagon(vec3 pos, float radius);
void ddraw_line(vec3 from, vec3 to);
void ddraw_line_dashed(vec3 from, vec3 to);
void ddraw_line_thin(vec3 from, vec3 to);
void ddraw_normal(vec3 pos, vec3 n);
void ddraw_pentagon(vec3 pos, float radius);
void ddraw_plane(vec3 p, vec3 n, float scale);
void ddraw_point(vec3 from);
void ddraw_position(vec3 pos, float radius);
void ddraw_position_dir(vec3 pos, vec3 dir, float radius);
void ddraw_pyramid(vec3 center, float height, int segments);
void ddraw_cylinder(vec3 center, float height, int segments);
void ddraw_sphere(vec3 pos, float radius);
void ddraw_square(vec3 pos, float radius);
void ddraw_text(vec3 pos, float scale, const char *text);
void ddraw_text2d(vec2 pos, const char *text);
void ddraw_triangle(vec3 p1, vec3 p2, vec3 p3);
void ddraw_prism(vec3 center, float radius, float height, vec3 normal, int segments);
void ddraw_demo();
void ddraw_flush();
void ddraw_flush_projview(mat44 proj, mat44 view);
typedef struct camera_t {
mat44 view, proj;
vec3 position, updir, lookdir;
float yaw, pitch;
float speed, fov;
float move_friction, move_damping;
float look_friction, look_damping;
vec2 last_look; vec3 last_move;
bool damping;
} camera_t;
camera_t camera();
void camera_teleport(camera_t *cam, vec3 pos);
void camera_moveby(camera_t *cam, vec3 inc);
void camera_fov(camera_t *cam, float fov);
void camera_fps(camera_t *cam, float yaw, float pitch);
void camera_orbit(camera_t *cam, float yaw, float pitch, float inc_distance);
void camera_lookat(camera_t *cam, vec3 target);
void camera_enable(camera_t *cam);
camera_t *camera_get_active();
int ui_camera(camera_t *cam);
void ddraw_camera(camera_t *cam);
typedef struct object_t {
uint64_t renderbucket;
mat44 transform;
quat rot;
vec3 sca, pos, euler, pivot;
handle* textures;
model_t model;
aabb bounds;
unsigned billboard;
bool light_cached;
} object_t;
object_t object();
void object_rotate(object_t *obj, vec3 euler);
void object_pivot(object_t *obj, vec3 euler);
void object_teleport(object_t *obj, vec3 pos);
void object_move(object_t *obj, vec3 inc);
vec3 object_position(object_t *obj);
void object_scale(object_t *obj, vec3 sca);
void object_model(object_t *obj, model_t model);
void object_diffuse(object_t *obj, texture_t tex);
void object_diffuse_push(object_t *obj, texture_t tex);
void object_diffuse_pop(object_t *obj);
void object_billboard(object_t *obj, unsigned mode);
enum LIGHT_TYPE {
LIGHT_DIRECTIONAL,
LIGHT_POINT,
LIGHT_SPOT,
};
enum LIGHT_FLAGS {
LIGHT_CAST_SHADOWS = 1,
};
typedef struct light_t {
char type;
vec3 diffuse, specular, ambient;
vec3 pos, dir;
struct {
float constant, linear, quadratic;
} falloff;
float specularPower;
float innerCone, outerCone;
bool cached;
} light_t;
light_t light();
void light_type(light_t* l, char type);
void light_diffuse(light_t* l, vec3 color);
void light_specular(light_t* l, vec3 color);
void light_ambient(light_t* l, vec3 color);
void light_teleport(light_t* l, vec3 pos);
void light_dir(light_t* l, vec3 dir);
void light_power(light_t* l, float power);
void light_falloff(light_t* l, float constant, float linear, float quadratic);
void light_cone(light_t* l, float innerCone, float outerCone);
void light_update(unsigned num_lights, light_t *lv);
enum SCENE_FLAGS {
SCENE_WIREFRAME = 1,
SCENE_CULLFACE = 2,
SCENE_BACKGROUND = 4,
SCENE_FOREGROUND = 8,
SCENE_UPDATE_SH_COEF = 16,
};
typedef struct scene_t {
object_t* objs;
light_t* lights;
skybox_t skybox;
int u_coefficients_sh;
} scene_t;
scene_t* scene_push();
void scene_pop();
scene_t* scene_get_active();
int scene_merge(const char *source);
void scene_render(int flags);
object_t* scene_spawn();
unsigned scene_count();
object_t* scene_index(unsigned index);
light_t* scene_spawn_light();
unsigned scene_count_light();
light_t* scene_index_light(unsigned index);
void script_init();
void script_run(const char *script);
void script_runfile(const char *pathfile);
void script_bind_class(const char *objname, int num_methods, const char **c_names, void **c_functions);
void script_bind_function(const char *c_name, void *c_function);
void script_call(const char *lua_function);
bool script_tests();
char* tempvl(const char *fmt, va_list);
char* tempva(const char *fmt, ...);
char* strcatf(char **s, const char *buf);
int strmatch(const char *s, const char *wildcard);
int strmatchi(const char *s, const char *wildcard);
int strcmp_qsort(const void *a, const void *b);
int strcmpi_qsort(const void *a, const void *b);
bool strbeg(const char *src, const char *sub);
bool strend(const char *src, const char *sub);
bool strbegi(const char *src, const char *sub);
bool strendi(const char *src, const char *sub);
const char * strstri(const char *src, const char *sub);
char * strupper(const char *str);
char * strlower(const char *str);
char * strrepl(char **copy, const char *target, const char *replace);
char * strswap(char *copy, const char *target, const char *replace);
char * strcut(char *copy, const char *target);
const char * strlerp(unsigned numpairs, const char **pairs, const char *str);
size_t strlcat(char *dst, const char *src, size_t dstcap);
size_t strlcpy(char *dst, const char *src, size_t dstcap);
char** strsplit(const char *string, const char *delimiters);
char* strjoin(char** list, const char *separator);
char * string8(const wchar_t *str);
uint32_t* string32( const char *utf8 );
void* thread( int (*thread_func)(void* user_data), void* user_data );
void thread_destroy( void *thd );
int argc();
char* argv(int);
int flag(const char *commalist);
const char* option(const char *commalist, const char *defaults);
int optioni(const char *commalist, int defaults);
float optionf(const char *commalist, float defaults);
void tty_color(unsigned color);
void tty_reset();
void tty_attach();
void tty_detach();
const char* app_exec(const char *command);
int app_spawn(const char *command);
int app_cores();
int app_battery();
const char* app_name();
const char* app_path();
const char* app_cache();
const char* app_temp();
const char* app_cmdline();
uint64_t date();
uint64_t date_epoch();
char* date_string();
double time_hh();
double time_mm();
double time_ss();
uint64_t time_ms();
uint64_t time_us();
uint64_t time_ns();
void sleep_ss(double ss);
void sleep_ms(double ms);
void sleep_us(double us);
void sleep_ns(double us);
unsigned timer(unsigned ms, unsigned (*callback)(unsigned ms, void *arg), void *arg);
void timer_destroy(unsigned timer_handle);
char* callstack( int traces );
int callstackf( FILE *fp, int traces );
void die(const char *message);
void alert(const char *message);
void hexdump( const void *ptr, unsigned len );
void hexdumpf( FILE *fp, const void *ptr, unsigned len, int width );
void breakpoint(const char *optional_reason);
bool has_debugger();
void signal_hooks(void);
void signal_handler_ignore(int signal);
void signal_handler_quit(int signal);
void signal_handler_abort(int signal);
void signal_handler_debug(int signal);
const char *signal_name(int signal);
uint16_t lil16(uint16_t n);
uint32_t lil32(uint32_t n);
float lil32f(float n);
uint64_t lil64(uint64_t n);
double lil64f(double n);
uint16_t big16(uint16_t n);
uint32_t big32(uint32_t n);
float big32f(float n);
uint64_t big64(uint64_t n);
double big64f(double n);
uint16_t* lil16p(void *n, int sz);
uint32_t* lil32p(void *n, int sz);
float* lil32pf(void *n, int sz);
uint64_t* lil64p(void *n, int sz);
double* lil64pf(void *n, int sz);
uint16_t* big16p(void *n, int sz);
uint32_t* big32p(void *n, int sz);
float* big32pf(void *n, int sz);
uint64_t* big64p(void *n, int sz);
double* big64pf(void *n, int sz);
int (PANIC)(const char *error, const char *file, int line);
int (PRINTF)(const char *text, const char *stack, const char *file, int line, const char *function);
enum PANEL_FLAGS {
PANEL_OPEN = 1,
};
int ui_notify(const char *title, const char *body);
int ui_window(const char *title, int *enabled);
int ui_panel(const char *title, int flags);
int ui_collapse(const char *label, const char *id);
int ui_contextual();
int ui_section(const char *title);
int ui_int(const char *label, int *value);
int ui_bool(const char *label, bool *value);
int ui_short(const char *label, short *value);
int ui_float(const char *label, float *value);
int ui_float2(const char *label, float value[2]);
int ui_float3(const char *label, float value[3]);
int ui_float4(const char *label, float value[4]);
int ui_mat33(const char *label, float mat33[9]);
int ui_mat34(const char *label, float mat34[12]);
int ui_mat44(const char *label, float mat44[16]);
int ui_double(const char *label, double *value);
int ui_buffer(const char *label, char *buffer, int buflen);
int ui_string(const char *label, char **string);
int ui_color3(const char *label, float *color3);
int ui_color3f(const char *label, float *color3);
int ui_color4(const char *label, float *color4);
int ui_color4f(const char *label, float *color4);
int ui_unsigned(const char *label, unsigned *value);
int ui_button(const char *label);
int ui_button_transparent(const char *label);
int ui_buttons(int buttons, ...);
int ui_toolbar(const char *options);
int ui_submenu(const char *options);
int ui_browse(const char **outfile, bool *inlined);
int ui_toggle(const char *label, bool *value);
int ui_dialog(const char *title, const char *text, int choices, bool *show);
int ui_list(const char *label, const char **items, int num_items, int *selector);
int ui_radio(const char *label, const char **items, int num_items, int *selector);
int ui_texture(const char *label, texture_t t);
int ui_subtexture(const char *label, texture_t t, unsigned x, unsigned y, unsigned w, unsigned h);
int ui_image(const char *label, handle id, unsigned w, unsigned h);
int ui_subimage(const char *label, handle id, unsigned iw, unsigned ih, unsigned sx, unsigned sy, unsigned sw, unsigned sh);
int ui_colormap(const char *label, colormap_t *cm);
int ui_separator();
int ui_bitmask8(const char *label, uint8_t *bits);
int ui_bitmask16(const char *label, uint16_t *bits);
int ui_console();
int ui_clampf(const char *label, float *value, float minf, float maxf);
int ui_label(const char *label);
int ui_label2(const char *label, const char *caption);
int ui_label2_bool(const char *label, bool enabled);
int ui_label2_float(const char *label, float value);
int ui_label2_toolbar(const char *label, const char *icons);
int ui_slider(const char *label, float *value);
int ui_slider2(const char *label, float *value, const char *caption);
int ui_contextual_end();
int ui_collapse_clicked();
int ui_collapse_end();
int ui_panel_end();
int ui_window_end();
int ui_show(const char *panel_or_window_title, int enabled);
int ui_dims(const char *panel_or_window_title, float width, float height);
int ui_visible(const char *panel_or_window_title);
vec2 ui_get_dims();
int ui_enable();
int ui_enabled();
int ui_disable();
int ui_has_menubar();
int ui_menu(const char *items);
int ui_menu_editbox(char *buf, int bufcap);
int ui_item();
int ui_popups();
int ui_hover();
int ui_active();
int ui_demo(int do_windows);
enum VIDEO_FLAGS {
VIDEO_YCBCR = 0,
VIDEO_RGB = 2,
VIDEO_AUDIO = 0,
VIDEO_NO_AUDIO = 4,
VIDEO_LOOP = 8,
};
typedef struct video_t video_t;
video_t* video( const char *filename, int flags );
texture_t* video_decode( video_t *v );
texture_t* video_textures( video_t *v );
int video_has_finished(video_t *v);
double video_duration(video_t *v);
int video_seek(video_t *v, double seek_to);
double video_position(video_t *v);
void video_pause(video_t *v, bool paused);
bool video_is_paused(video_t *v);
bool video_is_rgb(video_t *v);
void video_destroy( video_t *v );
bool record_start(const char *outfile_mp4);
bool record_active();
void record_stop(void);
enum WINDOW_FLAGS {
WINDOW_MSAA2 =2,
WINDOW_MSAA4 =4,
WINDOW_MSAA8 =8,
WINDOW_SQUARE =32,
WINDOW_PORTRAIT =64,
WINDOW_LANDSCAPE =128,
WINDOW_ASPECT =256,
WINDOW_FIXED =512,
WINDOW_TRANSPARENT =1024,
WINDOW_VSYNC = 0,
WINDOW_VSYNC_ADAPTIVE =4096,
WINDOW_VSYNC_DISABLED =8192,
};
bool window_create(float scale, unsigned flags);
bool window_create_from_handle(void *handle, float scale, unsigned flags);
void window_reload();
int window_frame_begin();
void window_frame_end();
void window_frame_swap();
int window_swap();
void window_loop(void (*function)(void* loopArg), void* loopArg );
void window_loop_exit();
void window_title(const char *title);
void window_icon(const char *file_icon);
void window_color(unsigned color);
vec2 window_canvas();
void* window_handle();
char* window_stats();
uint64_t window_frame();
int window_width();
int window_height();
double window_time();
double window_delta();
void window_focus();
int window_has_focus();
void window_fullscreen(int enabled);
int window_has_fullscreen();
void window_cursor(int visible);
int window_has_cursor();
void window_pause(int paused);
int window_has_pause();
void window_visible(int visible);
int window_has_visible();
void window_maximize(int enabled);
int window_has_maximize();
void window_transparent(int enabled);
int window_has_transparent();
double window_aspect();
void window_aspect_lock(unsigned numer, unsigned denom);
void window_aspect_unlock();
double window_fps();
double window_fps_target();
void window_fps_lock(float fps);
void window_fps_unlock();
void window_screenshot(const char* outfile_png);
int window_record(const char *outfile_mp4);
enum CURSOR_SHAPES {
CURSOR_NONE,
CURSOR_HW_ARROW,
CURSOR_HW_IBEAM,
CURSOR_HW_CROSS,
CURSOR_HW_HAND,
CURSOR_HW_HDRAG,
CURSOR_HW_VDRAG,
CURSOR_SW_AUTO,
};
void window_cursor_shape(unsigned shape);
]])
local _M = {}
function _M.vec2(x,y)
local v = ffi.new("union vec2")
v.x = x
v.y = y
return v
end
function _M.vec3(x,y,z)
local v = ffi.new("union vec3")
v.x = x
v.y = y
v.z = z
return v
end
function _M.vec4(x,y,z,w)
local v = ffi.new("union vec4")
v.x = x
v.y = y
v.z = z
v.w = w
return v
end
function _M.quat(x,y,z,w)
local q = ffi.new("union quat")
v.x = x
v.y = y
v.z = z
v.w = w
return q
end
function _M.mat44()
local m = ffi.new("float [16]")
return m
end
local v4k = ffi.load("v4k")
return setmetatable( _M, {
__index = function( table, key )
return v4k[ key ]
end
} )