GoldFish Engine
Quite simple and lightweight game engine
Loading...
Searching...
No Matches
gf_macro.h
Go to the documentation of this file.
1
7#ifndef __GF_MACRO_H__
8#define __GF_MACRO_H__
9
10#ifdef GF_EXPOSE_ALL
11
12#ifndef GF_EXPOSE_CORE
17#define GF_EXPOSE_CORE
18#endif
19
20#ifndef GF_EXPOSE_DRAW
25#define GF_EXPOSE_DRAW
26#endif
27
28#ifndef GF_EXPOSE_DRAW_PLATFORM
33#define GF_EXPOSE_DRAW_PLATFORM
34#endif
35
36#ifndef GF_EXPOSE_DRAW_DRIVER
41#define GF_EXPOSE_DRAW_DRIVER
42#endif
43
44#ifndef GF_EXPOSE_MESH
49#define GF_EXPOSE_MESH
50#endif
51
52#ifndef GF_EXPOSE_MODEL
57#define GF_EXPOSE_MODEL
58#endif
59
60#ifndef GF_EXPOSE_TEXTURE
65#define GF_EXPOSE_TEXTURE
66#endif
67
68#ifndef GF_EXPOSE_PHYSICS
73#define GF_EXPOSE_PHYSICS
74#endif
75
76#ifndef GF_EXPOSE_GUI
81#define GF_EXPOSE_GUI
82#endif
83
84#ifndef GF_EXPOSE_THREAD
89#define GF_EXPOSE_THREAD
90#endif
91
92#ifndef GF_EXPOSE_CLIENT
97#define GF_EXPOSE_CLIENT
98#endif
99
100#ifndef GF_EXPOSE_SERVER
105#define GF_EXPOSE_SERVER
106#endif
107
108#ifndef GF_EXPOSE_FONT
113#define GF_EXPOSE_FONT
114#endif
115
116#ifndef GF_EXPOSE_INPUT
121#define GF_EXPOSE_INPUT
122#endif
123
124#ifndef GF_EXPOSE_AUDIO
129#define GF_EXPOSE_AUDIO
130#endif
131
132#ifndef GF_EXPOSE_GRAPHIC
138#define GF_EXPOSE_GRAPHIC
139#endif
140
141#ifndef GF_EXPOSE_MATH
147#define GF_EXPOSE_MATH
148#endif
149
150#ifndef GF_EXPOSE_VERSION
156#define GF_EXPOSE_VERSION
157#endif
158
159#endif
160
166#ifndef __FUNCTION_NAME__
167#ifdef _MSC_VER
168#define __FUNCTION_NAME__ __FUNCTION__
169#else
170#define __FUNCTION_NAME__ __func__
171#endif
172#endif
173
180#define GF_DECLARE_TYPE(n, b) typedef struct gf_##n##_t b gf_##n##_t;
181
187#if defined(_WIN32) && defined(GF_DLL)
188#define GF_EXPORT extern __declspec(dllexport)
189#else
190#define GF_EXPORT extern
191#endif
192
193/* Expose them by default */
194#ifndef GF_EXPOSE_GRAPHIC
195#define GF_EXPOSE_GRAPHIC
196#endif
197
198#ifndef GF_EXPOSE_MATH
199#define GF_EXPOSE_MATH
200#endif
201
202#ifndef GF_EXPOSE_VERSION
203#define GF_EXPOSE_VERSION
204#endif
205
206#endif