aboutsummaryrefslogtreecommitdiffstats
path: root/loadgl.h.in
diff options
context:
space:
mode:
Diffstat (limited to 'loadgl.h.in')
-rw-r--r--loadgl.h.in27
1 files changed, 27 insertions, 0 deletions
diff --git a/loadgl.h.in b/loadgl.h.in
new file mode 100644
index 0000000..e7381cd
--- /dev/null
+++ b/loadgl.h.in
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2018 Tomasz Kramkowski <tk@the-tk.com>
+ * SPDX-License-Identifier: MIT
+ */
+#ifndef LOADGL_H
+#define LOADGL_H
+
+#include "gldefs.h"
+
+typedef void *lgl_loadfunc(const char *name);
+
+enum lgl_status {
+ LGL_OK,
+ LGL_MISSING,
+};
+
+enum lgl_status lgl_load(lgl_loadfunc *load);
+const char *lgl_strerror(enum lgl_status status);
+
+#define _LGL_INTERFACE(rett, name, func, ...) \
+ typedef rett func(__VA_ARGS__); \
+ extern func *name;
+#define LGL_INTERFACE(rett, name, ...) _LGL_INTERFACE(rett, name, name##_func, __VA_ARGS__)
+
+INTERFACES()dnl
+
+#endif // LOADGL_H