RetroArch
video_display_server.h
Go to the documentation of this file.
1 /* RetroArch - A frontend for libretro.
2  * Copyright (C) 2010-2014 - Hans-Kristian Arntzen
3  * Copyright (C) 2011-2017 - Daniel De Matteis
4  * Copyright (C) 2016-2017 - Brad Parker
5  *
6  * RetroArch is free software: you can redistribute it and/or modify it under the terms
7  * of the GNU General Public License as published by the Free Software Found-
8  * ation, either version 3 of the License, or (at your option) any later version.
9  *
10  * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  * PURPOSE. See the GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along with RetroArch.
15  * If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef __VIDEO_DISPLAY_SERVER__H
19 #define __VIDEO_DISPLAY_SERVER__H
20 
21 #include <retro_common_api.h>
22 #include <boolean.h>
23 
25 
26 typedef struct video_display_config
27 {
28  unsigned width;
29  unsigned height;
30  unsigned bpp;
31  unsigned refreshrate;
32  unsigned idx;
33  bool current;
35 
36 typedef struct video_display_server
37 {
38  void *(*init)(void);
39  void (*destroy)(void *data);
40  bool (*set_window_opacity)(void *data, unsigned opacity);
41  bool (*set_window_progress)(void *data, int progress, bool finished);
42  bool (*set_window_decorations)(void *data, bool on);
43  bool (*set_resolution)(void *data, unsigned width,
44  unsigned height, int int_hz, float hz, int center);
45  void *(*get_resolution_list)(void *data,
46  unsigned *size);
47  const char *(*get_output_options)(void *data);
48  const char *ident;
50 
51 void* video_display_server_init(void);
52 
54 
55 bool video_display_server_set_window_opacity(unsigned opacity);
56 
57 bool video_display_server_set_window_progress(int progress, bool finished);
58 
60 
62  unsigned width, unsigned height,
63  int int_hz, float hz, int center);
64 
66 
68 
69 const char *video_display_server_get_ident(void);
70 
74 
76 
77 #endif
void * video_display_server_get_resolution_list(unsigned *size)
Definition: video_display_server.c:101
bool video_display_server_set_resolution(unsigned width, unsigned height, int int_hz, float hz, int center)
Definition: video_display_server.c:93
#define RETRO_BEGIN_DECLS
Definition: retro_common_api.h:41
GLsizeiptr size
Definition: glext.h:6559
bool(* set_window_opacity)(void *data, unsigned opacity)
Definition: video_display_server.h:40
unsigned bpp
Definition: video_display_server.h:30
typedef void(__stdcall *PFN_DESTRUCTION_CALLBACK)(void *pData)
bool(* set_resolution)(void *data, unsigned width, unsigned height, int int_hz, float hz, int center)
Definition: video_display_server.h:43
unsigned idx
Definition: video_display_server.h:32
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: glext.h:6303
const char * video_display_server_get_output_options(void)
Definition: video_display_server.c:108
typedef bool(RETRO_CALLCONV *retro_replace_image_index_t)(unsigned index
const video_display_server_t dispserv_null
Definition: dispserv_null.c:46
unsigned height
Definition: video_display_server.h:29
bool video_display_server_set_window_progress(int progress, bool finished)
Definition: video_display_server.c:78
void(* destroy)(void *data)
Definition: video_display_server.h:39
Definition: video_display_server.h:26
const video_display_server_t dispserv_win32
Definition: dispserv_win32.c:349
bool video_display_server_set_window_opacity(unsigned opacity)
Definition: video_display_server.c:71
void video_display_server_destroy(void)
Definition: video_display_server.c:64
const video_display_server_t dispserv_x11
Definition: dispserv_x11.c:329
unsigned refreshrate
Definition: video_display_server.h:31
bool(* set_window_decorations)(void *data, bool on)
Definition: video_display_server.h:42
bool current
Definition: video_display_server.h:33
RETRO_BEGIN_DECLS struct video_display_config video_display_config_t
#define RETRO_END_DECLS
Definition: retro_common_api.h:42
struct video_display_server video_display_server_t
Definition: video_display_server.h:36
unsigned width
Definition: video_display_server.h:28
GLint GLint GLsizei width
Definition: glext.h:6293
const char * video_display_server_get_ident(void)
Definition: video_display_server.c:26
bool(* set_window_progress)(void *data, int progress, bool finished)
Definition: video_display_server.h:41
const char * ident
Definition: video_display_server.h:48
void * video_display_server_init(void)
Definition: video_display_server.c:33
bool video_display_server_set_window_decorations(bool on)
Definition: video_display_server.c:85
GLint GLint GLsizei GLsizei height
Definition: glext.h:6293