2019-03-31 13:51:14 +00:00
|
|
|
struct V3 {
|
|
|
|
V3(float a, float b, float c) { (void)a; (void)b; (void)c; }
|
|
|
|
float a, b, c;
|
2019-02-22 12:15:39 +00:00
|
|
|
};
|
2019-02-23 04:23:40 +00:00
|
|
|
struct V4 { float test; };
|
2019-02-22 15:25:19 +00:00
|
|
|
|
2019-02-23 04:23:40 +00:00
|
|
|
template <typename T, int Size>
|
2019-02-26 12:23:43 +00:00
|
|
|
struct Array { T data[Size]; };
|
2019-02-22 15:25:19 +00:00
|
|
|
|
2019-03-23 05:08:12 +00:00
|
|
|
enum struct OpenGLShader { Vertex, Count, };
|
|
|
|
|
2019-02-26 12:23:43 +00:00
|
|
|
DQN_INSPECT struct SampleStruct
|
2019-02-22 12:15:39 +00:00
|
|
|
{
|
2019-04-05 12:09:07 +00:00
|
|
|
int ebo DQN_INSPECT_META(char const *DisplayName = "Element Buffer Object"), vbo, vao DQN_INSPECT_META(char const *DisplayName = "Vertex Array Object", int OpenGLVersion = 330);
|
2019-04-04 14:03:46 +00:00
|
|
|
const int *const a;
|
2019-03-31 13:51:14 +00:00
|
|
|
int const *const b, c, *d, *e;
|
2019-04-04 14:03:46 +00:00
|
|
|
V4 draw_color DQN_INSPECT_META(char const *DisplayName = "HelloWorld");
|
2019-02-22 12:15:39 +00:00
|
|
|
// #if 0
|
|
|
|
// #endif
|
2019-02-23 04:23:40 +00:00
|
|
|
Array<V3, 32> lights;
|
|
|
|
Array<V4, 32> camera_matrixes;
|
|
|
|
char **bitmaps;
|
|
|
|
int shaders[(int)OpenGLShader::Count];
|
|
|
|
void *win32_handle;
|
|
|
|
V3 lighting_ambient_coeff;
|
|
|
|
int draw_call_count;
|
2019-02-23 02:19:36 +00:00
|
|
|
|
2019-02-23 03:04:35 +00:00
|
|
|
const int f;
|
|
|
|
int const g;
|
|
|
|
int *const h;
|
|
|
|
int const* i;
|
2019-04-22 05:41:22 +00:00
|
|
|
int ****const j, k, **l, *m;
|
2019-04-05 14:30:09 +00:00
|
|
|
|
2019-02-20 13:22:21 +00:00
|
|
|
};
|
2019-02-25 15:15:51 +00:00
|
|
|
|
2019-03-31 13:51:14 +00:00
|
|
|
DQN_INSPECT enum struct EnumWithMetadata
|
|
|
|
{
|
|
|
|
Rect DQN_INSPECT_META(char const *FilePath = "Rect.vert", V3 Coords = V3(1, 2, 3)),
|
|
|
|
Square DQN_INSPECT_META(char const *FilePath = "Square.vert"),
|
|
|
|
Count,
|
|
|
|
};
|
|
|
|
|
2019-05-03 10:23:14 +00:00
|
|
|
DQN_INSPECT_FUNCTION(b = {}, c = nullptr, e = false, f = 1, g = "Hello world")
|
2019-03-23 05:08:12 +00:00
|
|
|
void Function1(int a, float b, char const *c, bool e, int f, char *g)
|
|
|
|
{
|
|
|
|
(void)a; (void)b; (void)c; (void)e; (void)f; (void)g;
|
|
|
|
}
|
2019-02-26 12:23:43 +00:00
|
|
|
|
2019-05-03 10:23:14 +00:00
|
|
|
DQN_INSPECT_FUNCTION(foo = V3(10, 20, 50), bar = {120, 150, 20})
|
2019-03-23 05:41:22 +00:00
|
|
|
void *Function2(V3 foo, V3 bar, ...) { (void)foo; (void)bar; return nullptr; }
|
2019-02-26 12:23:43 +00:00
|
|
|
|
2019-05-03 10:23:14 +00:00
|
|
|
DQN_INSPECT_FUNCTION()
|
2019-03-23 05:08:12 +00:00
|
|
|
Array<int const *, 3> const *const Function3(Array<int, 32> const *foobar) { (void)foobar; return {}; }
|