improve header & macro consistency
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
|
||||
#ifndef FIFO_H
|
||||
#define FIFO_H
|
||||
|
||||
#include <pthread.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
struct audio_data {
|
||||
volatile float* audio_out_r;
|
||||
@@ -37,3 +42,5 @@ static inline void register_audio_impl(struct audio_impl* impl) { audio_impls[au
|
||||
void __attribute__((constructor)) _##N##_construct(void) { \
|
||||
register_audio_impl(&N##_var); \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#ifndef GLSL_EXT_H
|
||||
#define GLSL_EXT_H
|
||||
|
||||
#define RHANDLER(name, args, ...) \
|
||||
({ void _handler(const char* name, void** args) __VA_ARGS__ _handler; })
|
||||
#include <stdlib.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
struct request_handler {
|
||||
const char* name;
|
||||
@@ -44,3 +46,5 @@ struct glsl_ext {
|
||||
void ext_process(struct glsl_ext* ext, const char* f);
|
||||
void ext_free (struct glsl_ext* ext);
|
||||
bool ext_parse_color(const char* hex, size_t elem_sz, float** results);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,3 +1,10 @@
|
||||
|
||||
#ifndef PULSE_INPUT_H
|
||||
#define PULSE_INPUT_H
|
||||
|
||||
#include "fifo.h"
|
||||
|
||||
void get_pulse_default_sink(struct audio_data* audio);
|
||||
void* input_pulse(void* data);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -957,13 +957,15 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
struct gl_sfbo* current = NULL;
|
||||
size_t t_count = 0;
|
||||
|
||||
#define RHANDLER(name, args, ...) \
|
||||
({ void _handler(const char* name, void** args) __VA_ARGS__ _handler; })
|
||||
|
||||
#define WINDOW_HINT(request) \
|
||||
{ .name = "set" #request, .fmt = "b", \
|
||||
.handler = RHANDLER(name, args, { gl->wcb->set_##request(*(bool*) args[0]); }) }
|
||||
|
||||
struct request_handler handlers[] = {
|
||||
{
|
||||
.name = "setopacity", .fmt = "s",
|
||||
{ .name = "setopacity", .fmt = "s",
|
||||
.handler = RHANDLER(name, args, {
|
||||
|
||||
bool native_opacity = !strcmp("native", (char*) args[0]);
|
||||
@@ -983,19 +985,16 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "setmirror", .fmt = "b",
|
||||
{ .name = "setmirror", .fmt = "b",
|
||||
.handler = RHANDLER(name, args, {
|
||||
r->mirror_input = *(bool*) args[0];
|
||||
gl->mirror_input = *(bool*) args[0];
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "setfullscreencheck", .fmt = "b",
|
||||
{ .name = "setfullscreencheck", .fmt = "b",
|
||||
.handler = RHANDLER(name, args, { gl->check_fullscreen = *(bool*) args[0]; })
|
||||
},
|
||||
{
|
||||
.name = "setbg", .fmt = "s",
|
||||
{ .name = "setbg", .fmt = "s",
|
||||
.handler = RHANDLER(name, args, {
|
||||
float* results[] = {
|
||||
&gl->clear_color.r,
|
||||
@@ -1010,8 +1009,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
})
|
||||
},
|
||||
#ifdef GLAVA_DEBUG
|
||||
{
|
||||
.name = "settesteval", .fmt = "s",
|
||||
{ .name = "settesteval", .fmt = "s",
|
||||
.handler = RHANDLER(name, args, {
|
||||
float* results[] = {
|
||||
&gl->test_eval_color.r,
|
||||
@@ -1026,8 +1024,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
})
|
||||
},
|
||||
#endif
|
||||
{
|
||||
.name = "setbgf", .fmt = "ffff",
|
||||
{ .name = "setbgf", .fmt = "ffff",
|
||||
.handler = RHANDLER(name, args, {
|
||||
gl->clear_color.r = *(float*) args[0];
|
||||
gl->clear_color.g = *(float*) args[1];
|
||||
@@ -1035,8 +1032,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
gl->clear_color.a = *(float*) args[3];
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "mod", .fmt = "s",
|
||||
{ .name = "mod", .fmt = "s",
|
||||
.handler = RHANDLER(name, args, {
|
||||
if (loading_module) {
|
||||
if (module != NULL) free((char*) module);
|
||||
@@ -1047,8 +1043,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "nativeonly", .fmt = "b",
|
||||
{ .name = "nativeonly", .fmt = "b",
|
||||
.handler = RHANDLER(name, args, {
|
||||
fprintf(stderr, "WARNING: `nativeonly` is deprecated, use `#if PREMULTIPLY_ALPHA == 1`!\n");
|
||||
if (current)
|
||||
@@ -1063,15 +1058,13 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
WINDOW_HINT(decorated),
|
||||
WINDOW_HINT(focused),
|
||||
WINDOW_HINT(maximized),
|
||||
{
|
||||
.name = "setversion", .fmt = "ii",
|
||||
{ .name = "setversion", .fmt = "ii",
|
||||
.handler = RHANDLER(name, args, {
|
||||
context_version_major = *(int*) args[0];
|
||||
context_version_minor = *(int*) args[1];
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "setgeometry", .fmt = "iiii",
|
||||
{ .name = "setgeometry", .fmt = "iiii",
|
||||
.handler = RHANDLER(name, args, {
|
||||
gl->geometry[0] = *(int*) args[0];
|
||||
gl->geometry[1] = *(int*) args[1];
|
||||
@@ -1079,8 +1072,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
gl->geometry[3] = *(int*) args[3];
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "addxwinstate", .fmt = "s",
|
||||
{ .name = "addxwinstate", .fmt = "s",
|
||||
.handler = RHANDLER(name, args, {
|
||||
if (!auto_desktop || loading_presets) {
|
||||
++xwinstates_sz;
|
||||
@@ -1155,8 +1147,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
if (!loading_smooth_pass) gl->fft_cutoff = *(float*) args[0];}) },
|
||||
{ .name = "timecycle", .fmt = "f",
|
||||
.handler = RHANDLER(name, args, { gl->timecycle = *(float*) args[0]; }) },
|
||||
{
|
||||
.name = "transform", .fmt = "ss",
|
||||
{ .name = "transform", .fmt = "ss",
|
||||
.handler = RHANDLER(name, args, {
|
||||
size_t t;
|
||||
struct gl_bind* bind = NULL;
|
||||
@@ -1197,8 +1188,7 @@ struct glava_renderer* rd_new(const char** paths, const char* entry,
|
||||
++t_count;
|
||||
})
|
||||
},
|
||||
{
|
||||
.name = "uniform", .fmt = "ss",
|
||||
{ .name = "uniform", .fmt = "ss",
|
||||
.handler = RHANDLER(name, args, {
|
||||
if (!current) {
|
||||
fprintf(stderr, "Cannot bind uniform '%s' outside of a context"
|
||||
|
||||
@@ -4,6 +4,9 @@
|
||||
#ifndef XWIN_H
|
||||
#define XWIN_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include "render.h"
|
||||
|
||||
typedef unsigned long int Window;
|
||||
|
||||
void xwin_assign_icon_bmp(struct gl_wcb* wcb, void* impl, const char* path);
|
||||
|
||||
Reference in New Issue
Block a user