aboutsummaryrefslogtreecommitdiff
path: root/src/effects/scheme.h
diff options
context:
space:
mode:
authorFederico Angelilli <code@fedang.net>2024-09-18 14:49:59 +0200
committerFederico Angelilli <code@fedang.net>2024-09-18 14:49:59 +0200
commit0eceb95c0a4b517d7eb537a464089f011e3804e2 (patch)
tree54e2646d5a7c43b3fec074ebe98d4a33aefde025 /src/effects/scheme.h
parentbc70dead7fb518f073fecb21a04fa374e9ad6dd0 (diff)
Add effect parsingeffect-conf
Diffstat (limited to 'src/effects/scheme.h')
-rw-r--r--src/effects/scheme.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/effects/scheme.h b/src/effects/scheme.h
new file mode 100644
index 0000000..28ad69c
--- /dev/null
+++ b/src/effects/scheme.h
@@ -0,0 +1,23 @@
+#ifndef COMET_EFFECTS_SCHEME_H
+#define COMET_EFFECTS_SCHEME_H
+
+#include "../effect.h"
+#include "../config.h"
+#include "../layout.h"
+
+typedef struct effect_scheme effect_scheme_t;
+
+typedef bool (*effect_validate_t)(effect_t *effect, const effect_scheme_t *scheme);
+
+struct effect_scheme {
+ const char *name;
+ effect_t effect;
+ size_t size;
+ const config_entry_t *entries;
+ effect_validate_t validate;
+};
+
+extern const effect_scheme_t *effect_schemes[];
+
+#endif
+