mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-23 12:52:46 +00:00
dbd3d6502a
I never liked it, but with C2x coming out, it's best to handle bools properly. I haven't gone through all the uses of int as bool (I'll leave that for fixing when I encounter them), but this gets QF working with both c2x (really, gnu2x because of raw strings).
48 lines
1.3 KiB
C
48 lines
1.3 KiB
C
#ifndef __vid_internal_h
|
|
#define __vid_internal_h
|
|
|
|
#include "QF/vid.h"
|
|
#include "QF/plugin/vid_render.h"
|
|
|
|
typedef struct vid_system_s {
|
|
void (*init) (byte *palette, byte *colormap);
|
|
void (*shutdown) (void);
|
|
void (*set_palette) (byte *palette, byte *colormap);
|
|
void (*init_cvars) (void);
|
|
void (*update_fullscreen) (int fullscreen);
|
|
} vid_system_t;
|
|
|
|
extern vid_system_t vid_system;
|
|
|
|
typedef struct vid_internal_s {
|
|
void (*flush_caches) (void *ctx);
|
|
void (*init_buffers) (void *ctx);
|
|
void (*set_palette) (void *ctx, const byte *palette);
|
|
void (*set_colormap) (void *ctx, const byte *colormap);
|
|
|
|
void (*choose_visual) (void *ctx);
|
|
void (*create_context) (void *ctx);
|
|
|
|
void *ctx;
|
|
|
|
struct gl_ctx_s *(*gl_context) (struct vid_internal_s *);
|
|
struct sw_ctx_s *(*sw_context) (struct vid_internal_s *);
|
|
struct vulkan_ctx_s *(*vulkan_context) (struct vid_internal_s *);
|
|
|
|
void (*unload) (void *data);
|
|
} vid_internal_t;
|
|
|
|
extern int vid_fullscreen;
|
|
extern int vid_system_gamma;
|
|
extern float vid_gamma;
|
|
|
|
void VID_GetWindowSize (int def_w, int def_h);
|
|
void VID_SetWindowSize (int width, int height);
|
|
|
|
void VID_InitGamma (const byte *);
|
|
bool VID_SetGamma (double);
|
|
void VID_UpdateGamma (void);
|
|
|
|
void VID_MakeColormaps (void);
|
|
|
|
#endif//__vid_internal_h
|