Rename and move rarch_viewport

This commit is contained in:
twinaphex 2015-02-14 05:52:05 +01:00
parent b777f019bf
commit 64446ef497
28 changed files with 99 additions and 77 deletions

View File

@ -31,6 +31,7 @@
#include "core_options.h" #include "core_options.h"
#include "core_info.h" #include "core_info.h"
#include <retro_miscellaneous.h> #include <retro_miscellaneous.h>
#include "gfx/video_viewport.h"
#include "playlist.h" #include "playlist.h"
@ -83,16 +84,6 @@ enum sound_mode_enums
SOUND_MODE_LAST SOUND_MODE_LAST
}; };
typedef struct rarch_viewport
{
int x;
int y;
unsigned width;
unsigned height;
unsigned full_width;
unsigned full_height;
} rarch_viewport_t;
struct defaults struct defaults
{ {
char menu_config_dir[PATH_MAX_LENGTH]; char menu_config_dir[PATH_MAX_LENGTH];
@ -705,7 +696,7 @@ struct global
struct struct
{ {
rarch_viewport_t custom_vp; video_viewport_t custom_vp;
} viewports; } viewports;
unsigned gamma_correction; unsigned gamma_correction;

View File

@ -349,7 +349,7 @@ static void d3d_calculate_rect(d3d_video_t *d3d,
{ {
if (g_settings.video.scale_integer) if (g_settings.video.scale_integer)
{ {
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
video_viewport_get_scaled_integer(&vp, width, height, desired_aspect, keep); video_viewport_get_scaled_integer(&vp, width, height, desired_aspect, keep);
d3d_set_viewport(d3d, vp.x, vp.y, vp.width, vp.height); d3d_set_viewport(d3d, vp.x, vp.y, vp.width, vp.height);
} }
@ -359,10 +359,12 @@ static void d3d_calculate_rect(d3d_video_t *d3d,
{ {
if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM)
{ {
const rarch_viewport_t &custom = const video_viewport_t &custom =
g_extern.console.screen.viewports.custom_vp; g_extern.console.screen.viewports.custom_vp;
d3d_set_viewport(d3d, custom.x, custom.y,
custom.width, custom.height); if (custom)
d3d_set_viewport(d3d, custom.x, custom.y,
custom.width, custom.height);
} }
else else
{ {
@ -639,7 +641,7 @@ static bool d3d_construct(d3d_video_t *d3d,
return true; return true;
} }
static void d3d_viewport_info(void *data, struct rarch_viewport *vp) static void d3d_viewport_info(void *data, struct video_viewport *vp)
{ {
d3d_video_t *d3d = (d3d_video_t*)data; d3d_video_t *d3d = (d3d_video_t*)data;

View File

@ -1505,7 +1505,7 @@ static void exynos_gfx_set_rotation(void *data, unsigned rotation)
vid->menu_rotation = rotation; vid->menu_rotation = rotation;
} }
static void exynos_gfx_viewport_info(void *data, struct rarch_viewport *vp) static void exynos_gfx_viewport_info(void *data, struct video_viewport *vp)
{ {
struct exynos_video *vid = (struct exynos_video*)data; struct exynos_video *vid = (struct exynos_video*)data;

View File

@ -784,9 +784,7 @@ void gl_set_viewport(gl_t *gl, unsigned width,
#if defined(HAVE_MENU) #if defined(HAVE_MENU)
if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM)
{ {
const struct rarch_viewport *custom = const struct video_viewport *custom = &g_extern.console.screen.viewports.custom_vp;
(const struct rarch_viewport*)
&g_extern.console.screen.viewports.custom_vp;
/* GL has bottom-left origin viewport. */ /* GL has bottom-left origin viewport. */
x = custom->x; x = custom->x;
@ -2624,10 +2622,11 @@ static bool gl_set_shader(void *data,
#endif #endif
} }
static void gl_viewport_info(void *data, struct rarch_viewport *vp) static void gl_viewport_info(void *data, struct video_viewport *vp)
{ {
unsigned top_y, top_dist; unsigned top_y, top_dist;
gl_t *gl = (gl_t*)data; gl_t *gl = (gl_t*)data;
*vp = gl->vp; *vp = gl->vp;
vp->full_width = gl->win_width; vp->full_width = gl->win_width;
vp->full_height = gl->win_height; vp->full_height = gl->win_height;

View File

@ -1135,7 +1135,7 @@ static void gx_apply_state_changes(void *data)
gx->should_resize = true; gx->should_resize = true;
} }
static void gx_viewport_info(void *data, struct rarch_viewport *vp) static void gx_viewport_info(void *data, struct video_viewport *vp)
{ {
gx_video_t *gx = (gx_video_t*)data; gx_video_t *gx = (gx_video_t*)data;
*vp = gx->vp; *vp = gx->vp;

View File

@ -18,6 +18,8 @@
#ifndef _GX_VIDEO_H__ #ifndef _GX_VIDEO_H__
#define _GX_VIDEO_H__ #define _GX_VIDEO_H__
#include "../video_viewport.h"
struct gx_overlay_data struct gx_overlay_data
{ {
GXTexObj tex; GXTexObj tex;
@ -34,7 +36,7 @@ typedef struct gx_video
bool rgb32; bool rgb32;
uint32_t *menu_data; /* FIXME: Should be const uint16_t*. */ uint32_t *menu_data; /* FIXME: Should be const uint16_t*. */
bool menu_texture_enable; bool menu_texture_enable;
rarch_viewport_t vp; video_viewport_t vp;
unsigned scale; unsigned scale;
#ifdef HAVE_OVERLAY #ifdef HAVE_OVERLAY
struct gx_overlay_data *overlay; struct gx_overlay_data *overlay;

View File

@ -16,6 +16,7 @@
#include "../../general.h" #include "../../general.h"
#include "../../driver.h" #include "../../driver.h"
#include "../video_viewport.h"
static void *null_gfx_init(const video_info_t *video, static void *null_gfx_init(const video_info_t *video,
const input_driver_t **input, void **input_data) const input_driver_t **input, void **input_data)
@ -94,7 +95,7 @@ static void null_gfx_set_rotation(void *data,
} }
static void null_gfx_viewport_info(void *data, static void null_gfx_viewport_info(void *data,
struct rarch_viewport *vp) struct video_viewport *vp)
{ {
(void)data; (void)data;
(void)vp; (void)vp;

View File

@ -999,7 +999,7 @@ static bool omap_gfx_focus(void *data)
return true; /* fb device always has focus */ return true; /* fb device always has focus */
} }
static void omap_gfx_viewport_info(void *data, struct rarch_viewport *vp) static void omap_gfx_viewport_info(void *data, struct video_viewport *vp)
{ {
omap_video_t *vid = (omap_video_t*)data; omap_video_t *vid = (omap_video_t*)data;

View File

@ -102,7 +102,7 @@ typedef struct psp1_video
psp1_menu_frame_t menu; psp1_menu_frame_t menu;
rarch_viewport_t vp; video_viewport_t vp;
unsigned rotation; unsigned rotation;
bool vblank_not_reached; bool vblank_not_reached;
@ -715,13 +715,16 @@ static void psp_update_viewport(psp1_video_t* psp)
#if defined(HAVE_MENU) #if defined(HAVE_MENU)
if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM)
{ {
const struct rarch_viewport *custom = const struct video_viewport *custom =
&g_extern.console.screen.viewports.custom_vp; &g_extern.console.screen.viewports.custom_vp;
x = custom->x; if (custom)
y = custom->y; {
width = custom->width; x = custom->x;
height = custom->height; y = custom->y;
width = custom->width;
height = custom->height;
}
} }
else else
#endif #endif
@ -828,7 +831,7 @@ static void psp_apply_state_changes(void *data)
psp->should_resize = true; psp->should_resize = true;
} }
static void psp_viewport_info(void *data, struct rarch_viewport *vp) static void psp_viewport_info(void *data, struct video_viewport *vp)
{ {
psp1_video_t *psp = (psp1_video_t*)data; psp1_video_t *psp = (psp1_video_t*)data;

View File

@ -69,7 +69,7 @@ typedef struct _sdl2_video
uint8_t font_g; uint8_t font_g;
uint8_t font_b; uint8_t font_b;
struct rarch_viewport vp; struct video_viewport vp;
video_info_t video; video_info_t video;
@ -274,12 +274,15 @@ static void sdl_refresh_viewport(sdl2_video_t *vid)
vid->video.force_aspect); vid->video.force_aspect);
else if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) else if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM)
{ {
const struct rarch_viewport *custom = &g_extern.console.screen.viewports.custom_vp; const struct video_viewport *custom = &g_extern.console.screen.viewports.custom_vp;
vid->vp.x = custom->x; if (custom)
vid->vp.y = custom->y; {
vid->vp.width = custom->width; vid->vp.x = custom->x;
vid->vp.height = custom->height; vid->vp.y = custom->y;
vid->vp.width = custom->width;
vid->vp.height = custom->height;
}
} }
else if (vid->video.force_aspect) else if (vid->video.force_aspect)
{ {
@ -592,7 +595,7 @@ static void sdl2_gfx_set_rotation(void *data, unsigned rotation)
vid->rotation = 270 * rotation; vid->rotation = 270 * rotation;
} }
static void sdl2_gfx_viewport_info(void *data, struct rarch_viewport *vp) static void sdl2_gfx_viewport_info(void *data, struct video_viewport *vp)
{ {
sdl2_video_t *vid = (sdl2_video_t*)data; sdl2_video_t *vid = (sdl2_video_t*)data;
*vp = vid->vp; *vp = vid->vp;

View File

@ -424,7 +424,7 @@ static bool sdl_gfx_has_windowed(void *data)
return true; return true;
} }
static void sdl_gfx_viewport_info(void *data, struct rarch_viewport *vp) static void sdl_gfx_viewport_info(void *data, struct video_viewport *vp)
{ {
sdl_video_t *vid = (sdl_video_t*)data; sdl_video_t *vid = (sdl_video_t*)data;
vp->x = vp->y = 0; vp->x = vp->y = 0;

View File

@ -28,6 +28,7 @@
#include "../../performance.h" #include "../../performance.h"
#include "../font_renderer_driver.h" #include "../font_renderer_driver.h"
#include "../../content.h" #include "../../content.h"
#include "../gfx/video_viewport.h"
typedef struct typedef struct
{ {
@ -453,7 +454,7 @@ static void vg_set_rotation(void *data, unsigned rotation)
} }
static void vg_viewport_info(void *data, static void vg_viewport_info(void *data,
struct rarch_viewport *vp) struct video_viewport *vp)
{ {
(void)data; (void)data;
(void)vp; (void)vp;

View File

@ -25,6 +25,8 @@
#include "../../driver.h" #include "../../driver.h"
#include "../../general.h" #include "../../general.h"
#Include "../video_viewport.h"
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "config.h" #include "config.h"
#endif #endif
@ -292,7 +294,7 @@ static void xenon360_gfx_set_rotation(void *data, unsigned rotation)
(void)rotation; (void)rotation;
} }
static void xenon360_gfx_viewport_info(void *data, struct rarch_viewport *vp) static void xenon360_gfx_viewport_info(void *data, struct video_viewport *vp)
{ {
(void)data; (void)data;
(void)vp; (void)vp;

View File

@ -59,7 +59,7 @@ typedef struct xv
unsigned width; unsigned width;
unsigned height; unsigned height;
bool keep_aspect; bool keep_aspect;
struct rarch_viewport vp; struct video_viewport vp;
uint8_t *ytable; uint8_t *ytable;
uint8_t *utable; uint8_t *utable;
@ -350,7 +350,7 @@ static bool adaptor_set_format(xv_t *xv, Display *dpy,
return false; return false;
} }
static void calc_out_rect(bool keep_aspect, struct rarch_viewport *vp, static void calc_out_rect(bool keep_aspect, struct video_viewport *vp,
unsigned vp_width, unsigned vp_height) unsigned vp_width, unsigned vp_height)
{ {
vp->full_width = vp_width; vp->full_width = vp_width;
@ -878,7 +878,7 @@ static void xv_free(void *data)
free(xv); free(xv);
} }
static void xv_viewport_info(void *data, struct rarch_viewport *vp) static void xv_viewport_info(void *data, struct video_viewport *vp)
{ {
xv_t *xv = (xv_t*)data; xv_t *xv = (xv_t*)data;
*vp = xv->vp; *vp = xv->vp;

View File

@ -305,7 +305,7 @@ typedef struct gl
unsigned win_width; unsigned win_width;
unsigned win_height; unsigned win_height;
struct rarch_viewport vp; struct video_viewport vp;
unsigned vp_out_width; unsigned vp_out_width;
unsigned vp_out_height; unsigned vp_out_height;
unsigned last_width[MAX_TEXTURES]; unsigned last_width[MAX_TEXTURES];

View File

@ -19,7 +19,6 @@
#include "video_driver.h" #include "video_driver.h"
#include "video_thread_wrapper.h" #include "video_thread_wrapper.h"
#include "video_pixel_converter.h" #include "video_pixel_converter.h"
#include "video_viewport.h"
#include "video_monitor.h" #include "video_monitor.h"
#include "../general.h" #include "../general.h"
#include "../retroarch.h" #include "../retroarch.h"
@ -386,7 +385,7 @@ void uninit_video_input(void)
void init_video(void) void init_video(void)
{ {
unsigned max_dim, scale, width, height; unsigned max_dim, scale, width, height;
rarch_viewport_t *custom_vp; video_viewport_t *custom_vp = NULL;
const input_driver_t *tmp = NULL; const input_driver_t *tmp = NULL;
const struct retro_game_geometry *geom = NULL; const struct retro_game_geometry *geom = NULL;
video_info_t video = {0}; video_info_t video = {0};
@ -409,7 +408,7 @@ void init_video(void)
video_viewport_set_config(); video_viewport_set_config();
/* Update CUSTOM viewport. */ /* Update CUSTOM viewport. */
custom_vp = (rarch_viewport_t*)&g_extern.console.screen.viewports.custom_vp; custom_vp = &g_extern.console.screen.viewports.custom_vp;
if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM)
{ {
float default_aspect = aspectratio_lut[ASPECT_RATIO_CORE].value; float default_aspect = aspectratio_lut[ASPECT_RATIO_CORE].value;

View File

@ -24,6 +24,7 @@
#include <gfx/scaler/scaler.h> #include <gfx/scaler/scaler.h>
#include "video_filter.h" #include "video_filter.h"
#include "video_shader_parse.h" #include "video_shader_parse.h"
#include "video_viewport.h"
#include "../libretro.h" #include "../libretro.h"
#include "../input/input_driver.h" #include "../input/input_driver.h"
@ -33,8 +34,6 @@
extern "C" { extern "C" {
#endif #endif
struct rarch_viewport;
typedef struct video_info typedef struct video_info
{ {
unsigned width; unsigned width;
@ -159,7 +158,7 @@ typedef struct video_driver
const char *ident; const char *ident;
void (*set_rotation)(void *data, unsigned rotation); void (*set_rotation)(void *data, unsigned rotation);
void (*viewport_info)(void *data, struct rarch_viewport *vp); void (*viewport_info)(void *data, struct video_viewport *vp);
/* Reads out in BGR byte order (24bpp). */ /* Reads out in BGR byte order (24bpp). */
bool (*read_viewport)(void *data, uint8_t *buffer); bool (*read_viewport)(void *data, uint8_t *buffer);

View File

@ -15,6 +15,7 @@
*/ */
#include "video_thread_wrapper.h" #include "video_thread_wrapper.h"
#include "video_viewport.h"
#include "../performance.h" #include "../performance.h"
#include <file/dir_list.h> #include <file/dir_list.h>
#include <stdlib.h> #include <stdlib.h>
@ -135,7 +136,7 @@ static void thread_loop(void *data)
case CMD_READ_VIEWPORT: case CMD_READ_VIEWPORT:
{ {
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
thr->driver->viewport_info(thr->driver_data, &vp); thr->driver->viewport_info(thr->driver_data, &vp);
@ -306,7 +307,7 @@ static void thread_loop(void *data)
bool alive = false; bool alive = false;
bool focus = false; bool focus = false;
bool has_windowed = true; bool has_windowed = true;
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
slock_lock(thr->frame.lock); slock_lock(thr->frame.lock);
@ -591,7 +592,7 @@ static void thread_set_rotation(void *data, unsigned rotation)
* *
* This means this value might not be correct, so viewport * This means this value might not be correct, so viewport
* reads are not supported for now. */ * reads are not supported for now. */
static void thread_viewport_info(void *data, struct rarch_viewport *vp) static void thread_viewport_info(void *data, struct video_viewport *vp)
{ {
thread_video_t *thr = (thread_video_t*)data; thread_video_t *thr = (thread_video_t*)data;

View File

@ -168,8 +168,8 @@ typedef struct thread_video
} cmd_data; } cmd_data;
struct rarch_viewport vp; struct video_viewport vp;
struct rarch_viewport read_vp; /* Last viewport reported to caller. */ struct video_viewport read_vp; /* Last viewport reported to caller. */
struct struct
{ {

View File

@ -153,18 +153,20 @@ void video_viewport_get_scaled_integer(void *data,
float aspect_ratio, bool keep_aspect) float aspect_ratio, bool keep_aspect)
{ {
int padding_x = 0, padding_y = 0; int padding_x = 0, padding_y = 0;
struct rarch_viewport *vp = (struct rarch_viewport*)data; struct video_viewport *vp = (struct video_viewport*)data;
if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM) if (g_settings.video.aspect_ratio_idx == ASPECT_RATIO_CUSTOM)
{ {
const struct rarch_viewport *custom = const struct video_viewport *custom =
(const struct rarch_viewport*)
&g_extern.console.screen.viewports.custom_vp; &g_extern.console.screen.viewports.custom_vp;
padding_x = width - custom->width; if (custom)
padding_y = height - custom->height; {
width = custom->width; padding_x = width - custom->width;
height = custom->height; padding_y = height - custom->height;
width = custom->width;
height = custom->height;
}
} }
else else
{ {

View File

@ -20,12 +20,21 @@
#include <stddef.h> #include <stddef.h>
#include <stdint.h> #include <stdint.h>
#include <boolean.h> #include <boolean.h>
#include "../general.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
typedef struct video_viewport
{
int x;
int y;
unsigned width;
unsigned height;
unsigned full_width;
unsigned full_height;
} video_viewport_t;
enum aspect_ratio enum aspect_ratio
{ {
ASPECT_RATIO_4_3 = 0, ASPECT_RATIO_4_3 = 0,

View File

@ -19,6 +19,8 @@
#include "../../driver.h" #include "../../driver.h"
#include "../../gfx/video_viewport.h"
#include <boolean.h> #include <boolean.h>
#include "../../general.h" #include "../../general.h"
#include <stdint.h> #include <stdint.h>
@ -281,7 +283,7 @@ static void x_input_poll_mouse(x11_input_t *x11)
/* Somewhat hacky, but seem to do the job. */ /* Somewhat hacky, but seem to do the job. */
if (x11->grab_mouse && driver.video->focus(driver.video_data)) if (x11->grab_mouse && driver.video->focus(driver.video_data))
{ {
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
if (driver.video && driver.video->viewport_info) if (driver.video && driver.video->viewport_info)
driver.video->viewport_info(driver.video_data, &vp); driver.video->viewport_info(driver.video_data, &vp);

View File

@ -25,6 +25,8 @@
#include "../config.h" #include "../config.h"
#endif #endif
#include "../gfx/video_viewport.h"
static const char *bind_user_prefix[MAX_USERS] = { static const char *bind_user_prefix[MAX_USERS] = {
"input_player1", "input_player1",
"input_player2", "input_player2",
@ -130,7 +132,7 @@ bool input_translate_coord_viewport(int mouse_x, int mouse_y,
int16_t *res_screen_y) int16_t *res_screen_y)
{ {
int scaled_screen_x, scaled_screen_y, scaled_x, scaled_y; int scaled_screen_x, scaled_screen_y, scaled_x, scaled_y;
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
bool have_viewport_info = driver.video && driver.video->viewport_info; bool have_viewport_info = driver.video && driver.video->viewport_info;
if (!have_viewport_info) if (!have_viewport_info)

View File

@ -43,6 +43,8 @@
#include "../input/input_autodetect.h" #include "../input/input_autodetect.h"
#include "../input/input_remapping.h" #include "../input/input_remapping.h"
#include "../gfx/video_viewport.h"
#ifdef GEKKO #ifdef GEKKO
enum enum
{ {
@ -1547,15 +1549,13 @@ static int action_ok_set_path(const char *path,
static int action_ok_custom_viewport(const char *path, static int action_ok_custom_viewport(const char *path,
const char *label, unsigned type, size_t idx) const char *label, unsigned type, size_t idx)
{ {
rarch_viewport_t *custom = NULL; /* Start with something sane. */
video_viewport_t *custom = &g_extern.console.screen.viewports.custom_vp;
menu_handle_t *menu = menu_driver_resolve(); menu_handle_t *menu = menu_driver_resolve();
if (!menu) if (!menu)
return -1; return -1;
/* Start with something sane. */
custom = (rarch_viewport_t*)
&g_extern.console.screen.viewports.custom_vp;
menu_list_push_stack( menu_list_push_stack(
menu->menu_list, menu->menu_list,
@ -4127,8 +4127,7 @@ static int action_iterate_menu_viewport(const char *label, unsigned action)
struct retro_game_geometry *geom = NULL; struct retro_game_geometry *geom = NULL;
const char *base_msg = NULL; const char *base_msg = NULL;
unsigned type = 0; unsigned type = 0;
rarch_viewport_t *custom = (rarch_viewport_t*) video_viewport_t *custom = &g_extern.console.screen.viewports.custom_vp;
&g_extern.console.screen.viewports.custom_vp;
menu_handle_t *menu = menu_driver_resolve(); menu_handle_t *menu = menu_driver_resolve();
if (!menu) if (!menu)
return -1; return -1;
@ -4220,7 +4219,7 @@ static int action_iterate_menu_viewport(const char *label, unsigned action)
case MENU_ACTION_START: case MENU_ACTION_START:
if (!g_settings.video.scale_integer) if (!g_settings.video.scale_integer)
{ {
rarch_viewport_t vp; video_viewport_t vp;
if (driver.video_data && driver.video && if (driver.video_data && driver.video &&
driver.video->viewport_info) driver.video->viewport_info)

View File

@ -22,6 +22,7 @@
#include "../general.h" #include "../general.h"
#include "../retroarch.h" #include "../retroarch.h"
#include "../intl/intl.h" #include "../intl/intl.h"
#include "../gfx/video_viewport.h"
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "../config.h" #include "../config.h"
@ -101,7 +102,7 @@ void recording_dump_frame(const void *data, unsigned width,
if (g_extern.record_gpu_buffer) if (g_extern.record_gpu_buffer)
{ {
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
if (driver.video && driver.video->viewport_info) if (driver.video && driver.video->viewport_info)
driver.video->viewport_info(driver.video_data, &vp); driver.video->viewport_info(driver.video_data, &vp);
@ -220,7 +221,7 @@ bool recording_init(void)
if (g_settings.video.gpu_record && driver.video->read_viewport) if (g_settings.video.gpu_record && driver.video->read_viewport)
{ {
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
if (driver.video && driver.video->viewport_info) if (driver.video && driver.video->viewport_info)
driver.video->viewport_info(driver.video_data, &vp); driver.video->viewport_info(driver.video_data, &vp);

View File

@ -18,6 +18,7 @@
#define __RETROARCH_H #define __RETROARCH_H
#include <boolean.h> #include <boolean.h>
#include "core_info.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {

View File

@ -28,6 +28,7 @@
#include "retroarch.h" #include "retroarch.h"
#include "retroarch_logger.h" #include "retroarch_logger.h"
#include "screenshot.h" #include "screenshot.h"
#include "gfx/video_viewport.h"
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "config.h" #include "config.h"
@ -175,7 +176,7 @@ static bool take_screenshot_viewport(void)
const char *screenshot_dir = NULL; const char *screenshot_dir = NULL;
uint8_t *buffer = NULL; uint8_t *buffer = NULL;
bool retval = false; bool retval = false;
struct rarch_viewport vp = {0}; struct video_viewport vp = {0};
if (driver.video && driver.video->viewport_info) if (driver.video && driver.video->viewport_info)
driver.video->viewport_info(driver.video_data, &vp); driver.video->viewport_info(driver.video_data, &vp);

View File

@ -23,7 +23,9 @@
#include "input/input_common.h" #include "input/input_common.h"
#include "input/input_keymaps.h" #include "input/input_keymaps.h"
#include "input/input_remapping.h" #include "input/input_remapping.h"
#include "gfx/video_viewport.h"
#include "settings.h" #include "settings.h"
#include "general.h"
#ifdef HAVE_CONFIG_H #ifdef HAVE_CONFIG_H
#include "config.h" #include "config.h"