mirror of
https://github.com/libretro/RetroArch
synced 2025-04-07 13:23:32 +00:00
GFX_DISPLAY_GET_UPDATE_PENDING - turn function into macro
This commit is contained in:
parent
c040e4cd08
commit
37237db804
@ -1540,21 +1540,6 @@ void gfx_display_set_msg_force(bool state)
|
|||||||
p_disp->msg_force = state;
|
p_disp->msg_force = state;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Returns true if an animation is still active or
|
|
||||||
* when the display framebuffer still is dirty and
|
|
||||||
* therefore it still needs to be rendered onscreen.
|
|
||||||
*
|
|
||||||
* This function can be used for optimization purposes
|
|
||||||
* so that we don't have to render the display graphics per-frame
|
|
||||||
* unless a change has happened.
|
|
||||||
* */
|
|
||||||
bool gfx_display_get_update_pending(void)
|
|
||||||
{
|
|
||||||
gfx_display_t *p_disp = disp_get_ptr();
|
|
||||||
gfx_animation_t *p_anim = anim_get_ptr();
|
|
||||||
return (ANIM_IS_ACTIVE(p_anim) || p_disp->framebuf_dirty);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Checks if the display framebuffer has its 'dirty flag' set. This
|
/* Checks if the display framebuffer has its 'dirty flag' set. This
|
||||||
* means that the current contents of the framebuffer has changed
|
* means that the current contents of the framebuffer has changed
|
||||||
* and that it has to be rendered to the screen. */
|
* and that it has to be rendered to the screen. */
|
||||||
|
@ -50,6 +50,16 @@ RETRO_BEGIN_DECLS
|
|||||||
|
|
||||||
#define gfx_display_set_alpha(color, alpha_value) (color[3] = color[7] = color[11] = color[15] = (alpha_value))
|
#define gfx_display_set_alpha(color, alpha_value) (color[3] = color[7] = color[11] = color[15] = (alpha_value))
|
||||||
|
|
||||||
|
/* Returns true if an animation is still active or
|
||||||
|
* when the display framebuffer still is dirty and
|
||||||
|
* therefore it still needs to be rendered onscreen.
|
||||||
|
*
|
||||||
|
* This macro can be used for optimization purposes
|
||||||
|
* so that we don't have to render the display graphics per-frame
|
||||||
|
* unless a change has happened.
|
||||||
|
* */
|
||||||
|
#define GFX_DISPLAY_GET_UPDATE_PENDING(p_anim, p_disp) (ANIM_IS_ACTIVE(p_anim) || p_disp->framebuf_dirty)
|
||||||
|
|
||||||
enum menu_driver_id_type
|
enum menu_driver_id_type
|
||||||
{
|
{
|
||||||
MENU_DRIVER_ID_UNKNOWN = 0,
|
MENU_DRIVER_ID_UNKNOWN = 0,
|
||||||
@ -261,7 +271,6 @@ void gfx_display_set_framebuffer_pitch(size_t pitch);
|
|||||||
|
|
||||||
bool gfx_display_get_msg_force(void);
|
bool gfx_display_get_msg_force(void);
|
||||||
void gfx_display_set_msg_force(bool state);
|
void gfx_display_set_msg_force(bool state);
|
||||||
bool gfx_display_get_update_pending(void);
|
|
||||||
bool gfx_display_get_framebuffer_dirty_flag(void);
|
bool gfx_display_get_framebuffer_dirty_flag(void);
|
||||||
void gfx_display_set_framebuffer_dirty_flag(void);
|
void gfx_display_set_framebuffer_dirty_flag(void);
|
||||||
void gfx_display_unset_framebuffer_dirty_flag(void);
|
void gfx_display_unset_framebuffer_dirty_flag(void);
|
||||||
|
@ -3437,6 +3437,8 @@ static void rgui_render(void *data,
|
|||||||
rgui->show_fs_thumbnail &&
|
rgui->show_fs_thumbnail &&
|
||||||
rgui->entry_has_thumbnail &&
|
rgui->entry_has_thumbnail &&
|
||||||
(fs_thumbnail.is_valid || (rgui->thumbnail_queue_size > 0));
|
(fs_thumbnail.is_valid || (rgui->thumbnail_queue_size > 0));
|
||||||
|
gfx_animation_t *p_anim = anim_get_ptr();
|
||||||
|
gfx_display_t *p_disp = disp_get_ptr();
|
||||||
|
|
||||||
/* Sanity check */
|
/* Sanity check */
|
||||||
if (!rgui || !rgui_frame_buf.data)
|
if (!rgui || !rgui_frame_buf.data)
|
||||||
@ -3461,7 +3463,7 @@ static void rgui_render(void *data,
|
|||||||
|
|
||||||
if ( !display_kb &&
|
if ( !display_kb &&
|
||||||
!current_display_cb &&
|
!current_display_cb &&
|
||||||
(is_idle || !gfx_display_get_update_pending()))
|
(is_idle || !GFX_DISPLAY_GET_UPDATE_PENDING(p_anim, p_disp)))
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4433,6 +4433,8 @@ static int generic_menu_iterate(
|
|||||||
const char *label = NULL;
|
const char *label = NULL;
|
||||||
menu_handle_t *menu = (menu_handle_t*)data;
|
menu_handle_t *menu = (menu_handle_t*)data;
|
||||||
struct menu_state *menu_st = &p_rarch->menu_driver_state;
|
struct menu_state *menu_st = &p_rarch->menu_driver_state;
|
||||||
|
gfx_display_t *p_disp = &p_rarch->dispgfx;
|
||||||
|
gfx_animation_t *p_anim = &p_rarch->anim;
|
||||||
|
|
||||||
if (!menu)
|
if (!menu)
|
||||||
return 0;
|
return 0;
|
||||||
@ -4447,7 +4449,7 @@ static int generic_menu_iterate(
|
|||||||
|
|
||||||
if ( action != MENU_ACTION_NOOP
|
if ( action != MENU_ACTION_NOOP
|
||||||
|| menu_entries_ctl(MENU_ENTRIES_CTL_NEEDS_REFRESH, NULL)
|
|| menu_entries_ctl(MENU_ENTRIES_CTL_NEEDS_REFRESH, NULL)
|
||||||
|| gfx_display_get_update_pending())
|
|| GFX_DISPLAY_GET_UPDATE_PENDING(p_anim, p_disp))
|
||||||
{
|
{
|
||||||
BIT64_SET(menu->state, MENU_STATE_RENDER_FRAMEBUFFER);
|
BIT64_SET(menu->state, MENU_STATE_RENDER_FRAMEBUFFER);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user