generated from hertog/godot-module-template
68 lines
2.6 KiB
C
68 lines
2.6 KiB
C
// This file is generated. Do not edit!
|
|
// see https://github.com/hpvb/dynload-wrapper for details
|
|
// generated by generate-wrapper.py 0.7 on 2024-12-12 14:51:18
|
|
// flags: generate-wrapper.py --include ./thirdparty/linuxbsd_headers/X11/extensions/Xinerama.h --sys-include thirdparty/linuxbsd_headers/X11/extensions/Xinerama.h --soname libXinerama.so.1 --init-name xinerama --output-header ./platform/linuxbsd/x11/dynwrappers/xinerama-so_wrap.h --output-implementation ./platform/linuxbsd/x11/dynwrappers/xinerama-so_wrap.c --ignore-other
|
|
//
|
|
#include <stdint.h>
|
|
|
|
#define XineramaQueryExtension XineramaQueryExtension_dylibloader_orig_xinerama
|
|
#define XineramaQueryVersion XineramaQueryVersion_dylibloader_orig_xinerama
|
|
#define XineramaIsActive XineramaIsActive_dylibloader_orig_xinerama
|
|
#define XineramaQueryScreens XineramaQueryScreens_dylibloader_orig_xinerama
|
|
#include "thirdparty/linuxbsd_headers/X11/extensions/Xinerama.h"
|
|
#undef XineramaQueryExtension
|
|
#undef XineramaQueryVersion
|
|
#undef XineramaIsActive
|
|
#undef XineramaQueryScreens
|
|
#include <dlfcn.h>
|
|
#include <stdio.h>
|
|
int (*XineramaQueryExtension_dylibloader_wrapper_xinerama)(Display *, int *, int *);
|
|
int (*XineramaQueryVersion_dylibloader_wrapper_xinerama)(Display *, int *, int *);
|
|
int (*XineramaIsActive_dylibloader_wrapper_xinerama)(Display *);
|
|
XineramaScreenInfo *(*XineramaQueryScreens_dylibloader_wrapper_xinerama)(Display *, int *);
|
|
int initialize_xinerama(int verbose) {
|
|
void *handle;
|
|
char *error;
|
|
handle = dlopen("libXinerama.so.1", RTLD_LAZY);
|
|
if (!handle) {
|
|
if (verbose) {
|
|
fprintf(stderr, "%s\n", dlerror());
|
|
}
|
|
return(1);
|
|
}
|
|
dlerror();
|
|
// XineramaQueryExtension
|
|
*(void **) (&XineramaQueryExtension_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaQueryExtension");
|
|
if (verbose) {
|
|
error = dlerror();
|
|
if (error != NULL) {
|
|
fprintf(stderr, "%s\n", error);
|
|
}
|
|
}
|
|
// XineramaQueryVersion
|
|
*(void **) (&XineramaQueryVersion_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaQueryVersion");
|
|
if (verbose) {
|
|
error = dlerror();
|
|
if (error != NULL) {
|
|
fprintf(stderr, "%s\n", error);
|
|
}
|
|
}
|
|
// XineramaIsActive
|
|
*(void **) (&XineramaIsActive_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaIsActive");
|
|
if (verbose) {
|
|
error = dlerror();
|
|
if (error != NULL) {
|
|
fprintf(stderr, "%s\n", error);
|
|
}
|
|
}
|
|
// XineramaQueryScreens
|
|
*(void **) (&XineramaQueryScreens_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaQueryScreens");
|
|
if (verbose) {
|
|
error = dlerror();
|
|
if (error != NULL) {
|
|
fprintf(stderr, "%s\n", error);
|
|
}
|
|
}
|
|
return 0;
|
|
}
|