RetroArch
Classes | Macros | Typedefs | Functions | Variables
wgl_ctx.c File Reference
#include <math.h>
#include <tchar.h>
#include <wchar.h>
#include <string.h>
#include <windows.h>
#include <commdlg.h>
#include <dynamic/dylib.h>
#include <string/stdstring.h>
#include "../../configuration.h"
#include "../../dynamic.h"
#include "../video_driver.h"
#include "../common/win32_common.h"
Include dependency graph for wgl_ctx.c:

Classes

struct  gfx_ctx_cgl_data
 

Macros

#define _WIN32_WINNT   0x0500
 

Typedefs

typedef struct gfx_ctx_cgl_data gfx_ctx_wgl_data_t
 

Functions

static BOOL (APIENTRY *p_swap_interval)(int)
 
static gfx_ctx_proc_t gfx_ctx_wgl_get_proc_address (const char *symbol)
 
void create_graphics_context (HWND hwnd, bool *quit)
 
static void gfx_ctx_wgl_swap_interval (void *data, int interval)
 
static void gfx_ctx_wgl_check_window (void *data, bool *quit, bool *resize, unsigned *width, unsigned *height, bool is_shutdown)
 
static void gfx_ctx_wgl_swap_buffers (void *data, void *data2)
 
static bool gfx_ctx_wgl_set_resize (void *data, unsigned width, unsigned height)
 
static void gfx_ctx_wgl_update_title (void *data, void *data2)
 
static void gfx_ctx_wgl_get_video_size (void *data, unsigned *width, unsigned *height)
 
static voidgfx_ctx_wgl_init (video_frame_info_t *video_info, void *video_driver)
 
static void gfx_ctx_wgl_destroy (void *data)
 
static bool gfx_ctx_wgl_set_video_mode (void *data, video_frame_info_t *video_info, unsigned width, unsigned height, bool fullscreen)
 
static void gfx_ctx_wgl_input_driver (void *data, const char *joypad_name, const input_driver_t **input, void **input_data)
 
static bool gfx_ctx_wgl_has_focus (void *data)
 
static bool gfx_ctx_wgl_suppress_screensaver (void *data, bool enable)
 
static bool gfx_ctx_wgl_has_windowed (void *data)
 
static bool gfx_ctx_wgl_get_metrics (void *data, enum display_metric_types type, float *value)
 
static enum gfx_ctx_api gfx_ctx_wgl_get_api (void *data)
 
static bool gfx_ctx_wgl_bind_api (void *data, enum gfx_ctx_api api, unsigned major, unsigned minor)
 
static void gfx_ctx_wgl_show_mouse (void *data, bool state)
 
static void gfx_ctx_wgl_bind_hw_render (void *data, bool enable)
 
static uint32_t gfx_ctx_wgl_get_flags (void *data)
 
static void gfx_ctx_wgl_set_flags (void *data, uint32_t flags)
 
static void gfx_ctx_wgl_get_video_output_size (void *data, unsigned *width, unsigned *height)
 
static void gfx_ctx_wgl_get_video_output_prev (void *data)
 
static void gfx_ctx_wgl_get_video_output_next (void *data)
 

Variables

static HGLRC win32_hrc
 
static HGLRC win32_hw_hrc
 
static HDC win32_hdc
 
static bool win32_use_hw_ctx = false
 
static bool win32_core_hw_context_enable = false
 
static bool wgl_adaptive_vsync = false
 
static unsigned win32_major = 0
 
static unsigned win32_minor = 0
 
static int win32_interval = 0
 
static enum gfx_ctx_api win32_api = GFX_CTX_NONE
 
voiddinput_wgl
 
const gfx_ctx_driver_t gfx_ctx_wgl
 

Macro Definition Documentation

◆ _WIN32_WINNT

#define _WIN32_WINNT   0x0500

Typedef Documentation

◆ gfx_ctx_wgl_data_t

Function Documentation

◆ BOOL()

static BOOL ( APIENTRY p_swap_interval)
static
Here is the caller graph for this function:

◆ create_graphics_context()

void create_graphics_context ( HWND  hwnd,
bool quit 
)
Here is the call graph for this function:

◆ gfx_ctx_wgl_bind_api()

static bool gfx_ctx_wgl_bind_api ( void data,
enum gfx_ctx_api  api,
unsigned  major,
unsigned  minor 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_bind_hw_render()

static void gfx_ctx_wgl_bind_hw_render ( void data,
bool  enable 
)
static

◆ gfx_ctx_wgl_check_window()

static void gfx_ctx_wgl_check_window ( void data,
bool quit,
bool resize,
unsigned *  width,
unsigned *  height,
bool  is_shutdown 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_destroy()

static void gfx_ctx_wgl_destroy ( void data)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ gfx_ctx_wgl_get_api()

static enum gfx_ctx_api gfx_ctx_wgl_get_api ( void data)
static

◆ gfx_ctx_wgl_get_flags()

static uint32_t gfx_ctx_wgl_get_flags ( void data)
static

◆ gfx_ctx_wgl_get_metrics()

static bool gfx_ctx_wgl_get_metrics ( void data,
enum display_metric_types  type,
float *  value 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_get_proc_address()

static gfx_ctx_proc_t gfx_ctx_wgl_get_proc_address ( const char *  symbol)
static
Here is the caller graph for this function:

◆ gfx_ctx_wgl_get_video_output_next()

static void gfx_ctx_wgl_get_video_output_next ( void data)
static

◆ gfx_ctx_wgl_get_video_output_prev()

static void gfx_ctx_wgl_get_video_output_prev ( void data)
static

◆ gfx_ctx_wgl_get_video_output_size()

static void gfx_ctx_wgl_get_video_output_size ( void data,
unsigned *  width,
unsigned *  height 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_get_video_size()

static void gfx_ctx_wgl_get_video_size ( void data,
unsigned *  width,
unsigned *  height 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_has_focus()

static bool gfx_ctx_wgl_has_focus ( void data)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_has_windowed()

static bool gfx_ctx_wgl_has_windowed ( void data)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_init()

static void* gfx_ctx_wgl_init ( video_frame_info_t video_info,
void video_driver 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_input_driver()

static void gfx_ctx_wgl_input_driver ( void data,
const char *  joypad_name,
const input_driver_t **  input,
void **  input_data 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_set_flags()

static void gfx_ctx_wgl_set_flags ( void data,
uint32_t  flags 
)
static

◆ gfx_ctx_wgl_set_resize()

static bool gfx_ctx_wgl_set_resize ( void data,
unsigned  width,
unsigned  height 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_set_video_mode()

static bool gfx_ctx_wgl_set_video_mode ( void data,
video_frame_info_t video_info,
unsigned  width,
unsigned  height,
bool  fullscreen 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_show_mouse()

static void gfx_ctx_wgl_show_mouse ( void data,
bool  state 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_suppress_screensaver()

static bool gfx_ctx_wgl_suppress_screensaver ( void data,
bool  enable 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_swap_buffers()

static void gfx_ctx_wgl_swap_buffers ( void data,
void data2 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wgl_swap_interval()

static void gfx_ctx_wgl_swap_interval ( void data,
int  interval 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ gfx_ctx_wgl_update_title()

static void gfx_ctx_wgl_update_title ( void data,
void data2 
)
static
Here is the call graph for this function:

Variable Documentation

◆ dinput_wgl

void* dinput_wgl

◆ gfx_ctx_wgl

const gfx_ctx_driver_t gfx_ctx_wgl

◆ wgl_adaptive_vsync

bool wgl_adaptive_vsync = false
static

◆ win32_api

enum gfx_ctx_api win32_api = GFX_CTX_NONE
static

◆ win32_core_hw_context_enable

bool win32_core_hw_context_enable = false
static

◆ win32_hdc

HDC win32_hdc
static

◆ win32_hrc

HGLRC win32_hrc
static

◆ win32_hw_hrc

HGLRC win32_hw_hrc
static

◆ win32_interval

int win32_interval = 0
static

◆ win32_major

unsigned win32_major = 0
static

◆ win32_minor

unsigned win32_minor = 0
static

◆ win32_use_hw_ctx

bool win32_use_hw_ctx = false
static