summaryrefslogtreecommitdiff
path: root/sc/sh_enums.h
diff options
context:
space:
mode:
authorquou <quou@disroot.org>2024-12-14 23:15:34 +1100
committerquou <quou@disroot.org>2024-12-14 23:19:17 +1100
commit44e48ddc2785b037abd202a8d38b2ef2e8c36600 (patch)
treef58887ce48f7fdbf6dcca365b2a1b02a34e1b355 /sc/sh_enums.h
initial commit
Diffstat (limited to 'sc/sh_enums.h')
-rw-r--r--sc/sh_enums.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/sc/sh_enums.h b/sc/sh_enums.h
new file mode 100644
index 0000000..8f3c2a5
--- /dev/null
+++ b/sc/sh_enums.h
@@ -0,0 +1,41 @@
+#ifndef sh_enums_h
+#define sh_enums_h
+
+#define shader_type_xmacro() \
+ x(fragment) \
+ x(vertex)
+
+typedef enum {
+#define x(n) shader_type_ ## n,
+shader_type_xmacro()
+#undef x
+ shader_type_count
+} Shader_Type;
+
+#define sprogram_type_xmacro() \
+ x(graphics)
+
+typedef enum {
+#define x(n) sprogram_type_ ## n,
+sprogram_type_xmacro()
+#undef x
+ sprogram_type_count
+} SProgram_Type;
+
+#define svariable_type_xmacro() \
+ x(float) \
+ x(vec2) \
+ x(vec3) \
+ x(vec4) \
+ x(mat2) \
+ x(mat3) \
+ x(mat4)
+
+typedef enum {
+#define x(n) svariable_type_ ## n,
+svariable_type_xmacro()
+#undef x
+ svariable_type_count
+} SVariable_Type;
+
+#endif