mirror of
https://github.com/libretro/RetroArch
synced 2025-03-31 19:21:06 +00:00
Create video_driver_is_threaded
This commit is contained in:
parent
5c938320ed
commit
911acb8ead
@ -274,6 +274,17 @@ static bool hw_render_context_is_gl(enum retro_hw_context_type type)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool video_driver_is_threaded(void)
|
||||||
|
{
|
||||||
|
#ifdef HAVE_THREADS
|
||||||
|
settings_t *settings = config_get_ptr();
|
||||||
|
return settings->video.threaded
|
||||||
|
&& !video_driver_is_hw_context();
|
||||||
|
#else
|
||||||
|
return false;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* video_driver_get_ptr:
|
* video_driver_get_ptr:
|
||||||
*
|
*
|
||||||
@ -285,11 +296,7 @@ static bool hw_render_context_is_gl(enum retro_hw_context_type type)
|
|||||||
void *video_driver_get_ptr(bool force_nonthreaded_data)
|
void *video_driver_get_ptr(bool force_nonthreaded_data)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_THREADS
|
#ifdef HAVE_THREADS
|
||||||
settings_t *settings = config_get_ptr();
|
if (video_driver_is_threaded() && !force_nonthreaded_data)
|
||||||
|
|
||||||
if (settings->video.threaded
|
|
||||||
&& !video_driver_is_hw_context()
|
|
||||||
&& !force_nonthreaded_data)
|
|
||||||
return video_thread_get_ptr(NULL);
|
return video_thread_get_ptr(NULL);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -696,8 +703,7 @@ static bool init_video(void)
|
|||||||
video_driver_find_driver();
|
video_driver_find_driver();
|
||||||
|
|
||||||
#ifdef HAVE_THREADS
|
#ifdef HAVE_THREADS
|
||||||
if (settings->video.threaded
|
if (video_driver_is_threaded())
|
||||||
&& !video_driver_is_hw_context())
|
|
||||||
{
|
{
|
||||||
/* Can't do hardware rendering with threaded driver currently. */
|
/* Can't do hardware rendering with threaded driver currently. */
|
||||||
RARCH_LOG("Starting threaded video driver ...\n");
|
RARCH_LOG("Starting threaded video driver ...\n");
|
||||||
@ -1601,9 +1607,9 @@ void video_driver_set_nonblock_state(bool toggle)
|
|||||||
|
|
||||||
bool video_driver_find_driver(void)
|
bool video_driver_find_driver(void)
|
||||||
{
|
{
|
||||||
settings_t *settings = config_get_ptr();
|
|
||||||
int i;
|
int i;
|
||||||
driver_ctx_info_t drv;
|
driver_ctx_info_t drv;
|
||||||
|
settings_t *settings = config_get_ptr();
|
||||||
|
|
||||||
if (video_driver_is_hw_context())
|
if (video_driver_is_hw_context())
|
||||||
{
|
{
|
||||||
@ -2194,12 +2200,7 @@ bool video_driver_texture_load(void *data,
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
*id = video_driver_poke->load_texture(video_driver_data, data,
|
*id = video_driver_poke->load_texture(video_driver_data, data,
|
||||||
#ifdef HAVE_THREADS
|
video_driver_is_threaded(),
|
||||||
settings->video.threaded
|
|
||||||
&& !video_driver_is_hw_context(),
|
|
||||||
#else
|
|
||||||
false,
|
|
||||||
#endif
|
|
||||||
filter_type);
|
filter_type);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user