mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-02-07 20:26:36 +00:00
Simplify video_driver.c code - turn some functions into macros
This commit is contained in:
parent
f85632b8e8
commit
05d6735720
@ -101,8 +101,8 @@ static retro_time_t video_driver_frame_time_samples[MEASURE_FRAME_TIME_SAMPLES_C
|
||||
static uint64_t video_driver_frame_time_count = 0;
|
||||
static uint64_t video_driver_frame_count = 0;
|
||||
|
||||
static void *video_driver_data = NULL;
|
||||
static video_driver_t *current_video = NULL;
|
||||
void *video_driver_data = NULL;
|
||||
video_driver_t *current_video = NULL;
|
||||
|
||||
/* Interface for "poking". */
|
||||
static const video_poke_interface_t *video_driver_poke = NULL;
|
||||
@ -1668,40 +1668,11 @@ void video_driver_apply_state_changes(void)
|
||||
|
||||
bool video_driver_read_viewport(uint8_t *buffer)
|
||||
{
|
||||
if (!current_video->read_viewport)
|
||||
return false;
|
||||
if (!current_video->read_viewport(video_driver_data, buffer))
|
||||
return false;
|
||||
if ( current_video->read_viewport
|
||||
&& current_video->read_viewport(video_driver_data, buffer))
|
||||
return true;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool video_driver_cached_frame_has_valid_framebuffer(void)
|
||||
{
|
||||
if (!frame_cache_data)
|
||||
return false;
|
||||
return frame_cache_data == RETRO_HW_FRAME_BUFFER_VALID;
|
||||
}
|
||||
|
||||
bool video_driver_is_alive(void)
|
||||
{
|
||||
if (current_video)
|
||||
return current_video->alive(video_driver_data);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool video_driver_is_focused(void)
|
||||
{
|
||||
return current_video->focus(video_driver_data);
|
||||
}
|
||||
|
||||
bool video_driver_has_windowed(void)
|
||||
{
|
||||
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
|
||||
return false;
|
||||
#else
|
||||
return current_video->has_windowed(video_driver_data);
|
||||
#endif
|
||||
}
|
||||
|
||||
uint64_t *video_driver_get_frame_count_ptr(void)
|
||||
@ -1902,29 +1873,26 @@ void video_driver_gpu_record_deinit(void)
|
||||
bool video_driver_get_current_software_framebuffer(struct retro_framebuffer *fb)
|
||||
{
|
||||
if (
|
||||
!video_driver_poke ||
|
||||
!video_driver_poke->get_current_software_framebuffer)
|
||||
return false;
|
||||
if (!video_driver_poke->get_current_software_framebuffer(
|
||||
video_driver_poke
|
||||
&& video_driver_poke->get_current_software_framebuffer
|
||||
&& video_driver_poke->get_current_software_framebuffer(
|
||||
video_driver_data, fb))
|
||||
return false;
|
||||
return true;
|
||||
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool video_driver_get_hw_render_interface(
|
||||
const struct retro_hw_render_interface **iface)
|
||||
{
|
||||
if (
|
||||
!video_driver_poke ||
|
||||
!video_driver_poke->get_hw_render_interface)
|
||||
return false;
|
||||
|
||||
if (!video_driver_poke->get_hw_render_interface(
|
||||
video_driver_poke
|
||||
&& video_driver_poke->get_hw_render_interface
|
||||
&& video_driver_poke->get_hw_render_interface(
|
||||
video_driver_data, iface))
|
||||
return false;
|
||||
return true;
|
||||
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool video_driver_get_viewport_info(struct video_viewport *viewport)
|
||||
|
@ -213,6 +213,18 @@ struct aspect_ratio_elem
|
||||
|
||||
extern struct aspect_ratio_elem aspectratio_lut[ASPECT_RATIO_END];
|
||||
|
||||
#define video_driver_is_alive() ((current_video) ? current_video->alive(video_driver_data) : true)
|
||||
|
||||
#define video_driver_is_focused() (current_video->focus(video_driver_data))
|
||||
|
||||
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
|
||||
#define video_driver_has_windowed() (false)
|
||||
#else
|
||||
#define video_driver_has_windowed() (current_video->has_windowed(video_driver_data))
|
||||
#endif
|
||||
|
||||
#define video_driver_cached_frame_has_valid_framebuffer() (frame_cache_data ? (frame_cache_data == RETRO_HW_FRAME_BUFFER_VALID) : false)
|
||||
|
||||
void video_driver_destroy(void);
|
||||
void video_driver_set_cached_frame_ptr(const void *data);
|
||||
void video_driver_set_stub_frame(void);
|
||||
@ -240,11 +252,7 @@ void video_driver_set_nonblock_state(bool toggle);
|
||||
bool video_driver_find_driver(void);
|
||||
void video_driver_apply_state_changes(void);
|
||||
bool video_driver_read_viewport(uint8_t *buffer);
|
||||
bool video_driver_cached_frame_has_valid_framebuffer(void);
|
||||
bool video_driver_cached_frame(void);
|
||||
bool video_driver_is_alive(void);
|
||||
bool video_driver_is_focused(void);
|
||||
bool video_driver_has_windowed(void);
|
||||
uint64_t *video_driver_get_frame_count_ptr(void);
|
||||
bool video_driver_frame_filter_alive(void);
|
||||
bool video_driver_frame_filter_is_32bit(void);
|
||||
@ -506,6 +514,9 @@ extern video_driver_t video_drm;
|
||||
extern video_driver_t video_xshm;
|
||||
extern video_driver_t video_null;
|
||||
|
||||
extern void *video_driver_data;
|
||||
extern video_driver_t *current_video;
|
||||
|
||||
RETRO_END_DECLS
|
||||
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user