mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-03-01 16:15:35 +00:00
Move non-Salamander code in frontend_driver.c outside to retroarch.c
This commit is contained in:
parent
d507553c74
commit
ae86cbaa3d
@ -134,11 +134,6 @@ static frontend_ctx_driver_t *frontend_ctx_drivers[] = {
|
||||
NULL
|
||||
};
|
||||
|
||||
#ifndef IS_SALAMANDER
|
||||
/* TODO/FIXME - static public global variable */
|
||||
static frontend_ctx_driver_t *current_frontend_ctx;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* frontend_ctx_find_driver:
|
||||
* @ident : Identifier name of driver to find.
|
||||
@ -280,294 +275,3 @@ bool frontend_driver_get_salamander_basename(char *s, size_t len)
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifndef IS_SALAMANDER
|
||||
frontend_ctx_driver_t *frontend_get_ptr(void)
|
||||
{
|
||||
return current_frontend_ctx;
|
||||
}
|
||||
|
||||
int frontend_driver_parse_drive_list(void *data, bool load_content)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
|
||||
if (!frontend || !frontend->parse_drive_list)
|
||||
return -1;
|
||||
return frontend->parse_drive_list(data, load_content);
|
||||
}
|
||||
|
||||
void frontend_driver_content_loaded(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
|
||||
if (!frontend || !frontend->content_loaded)
|
||||
return;
|
||||
frontend->content_loaded();
|
||||
}
|
||||
|
||||
bool frontend_driver_has_fork(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
|
||||
if (!frontend || !frontend->set_fork)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool frontend_driver_set_fork(enum frontend_fork fork_mode)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
|
||||
if (!frontend_driver_has_fork())
|
||||
return false;
|
||||
return frontend->set_fork(fork_mode);
|
||||
}
|
||||
|
||||
void frontend_driver_process_args(int *argc, char *argv[])
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
|
||||
if (!frontend || !frontend->process_args)
|
||||
return;
|
||||
frontend->process_args(argc, argv);
|
||||
}
|
||||
|
||||
bool frontend_driver_is_inited(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void frontend_driver_init_first(void *args)
|
||||
{
|
||||
current_frontend_ctx = (frontend_ctx_driver_t*)frontend_ctx_init_first();
|
||||
|
||||
if (current_frontend_ctx && current_frontend_ctx->init)
|
||||
current_frontend_ctx->init(args);
|
||||
}
|
||||
|
||||
void frontend_driver_free(void)
|
||||
{
|
||||
current_frontend_ctx = NULL;
|
||||
}
|
||||
|
||||
environment_get_t frontend_driver_environment_get_ptr(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend)
|
||||
return NULL;
|
||||
return frontend->environment_get;
|
||||
}
|
||||
|
||||
bool frontend_driver_has_get_video_driver_func(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_video_driver)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
const struct video_driver *frontend_driver_get_video_driver(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_video_driver)
|
||||
return NULL;
|
||||
return frontend->get_video_driver();
|
||||
}
|
||||
|
||||
void frontend_driver_exitspawn(char *s, size_t len, char *args)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->exitspawn)
|
||||
return;
|
||||
frontend->exitspawn(s, len, args);
|
||||
}
|
||||
|
||||
void frontend_driver_deinit(void *args)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->deinit)
|
||||
return;
|
||||
frontend->deinit(args);
|
||||
}
|
||||
|
||||
void frontend_driver_shutdown(bool a)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->shutdown)
|
||||
return;
|
||||
frontend->shutdown(a);
|
||||
}
|
||||
|
||||
enum frontend_architecture frontend_driver_get_cpu_architecture(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_architecture)
|
||||
return FRONTEND_ARCH_NONE;
|
||||
return frontend->get_architecture();
|
||||
}
|
||||
|
||||
const void *frontend_driver_get_cpu_architecture_str(
|
||||
char *architecture, size_t size)
|
||||
{
|
||||
const frontend_ctx_driver_t
|
||||
*frontend = frontend_get_ptr();
|
||||
enum frontend_architecture arch = frontend_driver_get_cpu_architecture();
|
||||
|
||||
switch (arch)
|
||||
{
|
||||
case FRONTEND_ARCH_X86:
|
||||
strlcpy(architecture, "x86", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_X86_64:
|
||||
strlcpy(architecture, "x64", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_PPC:
|
||||
strlcpy(architecture, "PPC", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_ARM:
|
||||
strlcpy(architecture, "ARM", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_ARMV7:
|
||||
strlcpy(architecture, "ARMv7", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_ARMV8:
|
||||
strlcpy(architecture, "ARMv8", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_MIPS:
|
||||
strlcpy(architecture, "MIPS", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_TILE:
|
||||
strlcpy(architecture, "Tilera", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_NONE:
|
||||
default:
|
||||
strlcpy(architecture, "N/A", size);
|
||||
break;
|
||||
}
|
||||
|
||||
return frontend;
|
||||
}
|
||||
|
||||
uint64_t frontend_driver_get_total_memory(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_total_mem)
|
||||
return 0;
|
||||
return frontend->get_total_mem();
|
||||
}
|
||||
|
||||
uint64_t frontend_driver_get_free_memory(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_free_mem)
|
||||
return 0;
|
||||
return frontend->get_free_mem();
|
||||
}
|
||||
|
||||
void frontend_driver_install_signal_handler(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->install_signal_handler)
|
||||
return;
|
||||
frontend->install_signal_handler();
|
||||
}
|
||||
|
||||
int frontend_driver_get_signal_handler_state(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_signal_handler_state)
|
||||
return -1;
|
||||
return frontend->get_signal_handler_state();
|
||||
}
|
||||
|
||||
void frontend_driver_set_signal_handler_state(int value)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->set_signal_handler_state)
|
||||
return;
|
||||
frontend->set_signal_handler_state(value);
|
||||
}
|
||||
|
||||
void frontend_driver_attach_console(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->attach_console)
|
||||
return;
|
||||
frontend->attach_console();
|
||||
}
|
||||
|
||||
void frontend_driver_detach_console(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->detach_console)
|
||||
return;
|
||||
frontend->detach_console();
|
||||
}
|
||||
|
||||
void frontend_driver_destroy_signal_handler_state(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->destroy_signal_handler_state)
|
||||
return;
|
||||
frontend->destroy_signal_handler_state();
|
||||
}
|
||||
|
||||
bool frontend_driver_can_watch_for_changes(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->watch_path_for_changes)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void frontend_driver_watch_path_for_changes(struct string_list *list, int flags, path_change_data_t **change_data)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->watch_path_for_changes)
|
||||
return;
|
||||
frontend->watch_path_for_changes(list, flags, change_data);
|
||||
}
|
||||
|
||||
bool frontend_driver_check_for_path_changes(path_change_data_t *change_data)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->check_for_path_changes)
|
||||
return false;
|
||||
return frontend->check_for_path_changes(change_data);
|
||||
}
|
||||
|
||||
void frontend_driver_set_sustained_performance_mode(bool on)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->set_sustained_performance_mode)
|
||||
return;
|
||||
frontend->set_sustained_performance_mode(on);
|
||||
}
|
||||
|
||||
const char* frontend_driver_get_cpu_model_name(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_cpu_model_name)
|
||||
return NULL;
|
||||
return frontend->get_cpu_model_name();
|
||||
}
|
||||
|
||||
enum retro_language frontend_driver_get_user_language(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->get_user_language)
|
||||
return RETRO_LANGUAGE_ENGLISH;
|
||||
return frontend->get_user_language();
|
||||
}
|
||||
|
||||
bool frontend_driver_is_narrator_running(void)
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
if (!frontend || !frontend->is_narrator_running)
|
||||
return false;
|
||||
return frontend->is_narrator_running();
|
||||
}
|
||||
#endif
|
||||
|
321
retroarch.c
321
retroarch.c
@ -2541,6 +2541,7 @@ struct rarch_state
|
||||
#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL)
|
||||
struct video_shader *menu_driver_shader;
|
||||
#endif
|
||||
frontend_ctx_driver_t *current_frontend_ctx;
|
||||
};
|
||||
|
||||
static struct rarch_state rarch_st;
|
||||
@ -39770,7 +39771,7 @@ static bool accessibility_speak_priority(
|
||||
|
||||
if (is_accessibility_enabled(p_rarch))
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (frontend && frontend->accessibility_speak)
|
||||
{
|
||||
int speed = settings->uints.accessibility_narrator_speech_speed;
|
||||
@ -39800,7 +39801,7 @@ static bool is_narrator_running(struct rarch_state *p_rarch)
|
||||
{
|
||||
if (is_accessibility_enabled(p_rarch))
|
||||
{
|
||||
frontend_ctx_driver_t *frontend = frontend_get_ptr();
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (frontend && frontend->is_narrator_running)
|
||||
return frontend->is_narrator_running();
|
||||
}
|
||||
@ -39895,3 +39896,319 @@ void menu_content_environment_get(int *argc, char *argv[],
|
||||
wrap_args->libretro_path = string_is_empty(path_get(RARCH_PATH_CORE)) ? NULL :
|
||||
path_get(RARCH_PATH_CORE);
|
||||
}
|
||||
|
||||
frontend_ctx_driver_t *frontend_get_ptr(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
return p_rarch->current_frontend_ctx;
|
||||
}
|
||||
|
||||
int frontend_driver_parse_drive_list(void *data, bool load_content)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
|
||||
if (!frontend || !frontend->parse_drive_list)
|
||||
return -1;
|
||||
return frontend->parse_drive_list(data, load_content);
|
||||
}
|
||||
|
||||
void frontend_driver_content_loaded(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
|
||||
if (!frontend || !frontend->content_loaded)
|
||||
return;
|
||||
frontend->content_loaded();
|
||||
}
|
||||
|
||||
bool frontend_driver_has_fork(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
|
||||
if (!frontend || !frontend->set_fork)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool frontend_driver_set_fork(enum frontend_fork fork_mode)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
|
||||
if (!frontend_driver_has_fork())
|
||||
return false;
|
||||
return frontend->set_fork(fork_mode);
|
||||
}
|
||||
|
||||
void frontend_driver_process_args(int *argc, char *argv[])
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
|
||||
if (!frontend || !frontend->process_args)
|
||||
return;
|
||||
frontend->process_args(argc, argv);
|
||||
}
|
||||
|
||||
bool frontend_driver_is_inited(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void frontend_driver_init_first(void *args)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
p_rarch->current_frontend_ctx = (frontend_ctx_driver_t*)
|
||||
frontend_ctx_init_first();
|
||||
|
||||
if (p_rarch->current_frontend_ctx && p_rarch->current_frontend_ctx->init)
|
||||
p_rarch->current_frontend_ctx->init(args);
|
||||
}
|
||||
|
||||
void frontend_driver_free(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
|
||||
if (p_rarch)
|
||||
p_rarch->current_frontend_ctx = NULL;
|
||||
}
|
||||
|
||||
environment_get_t frontend_driver_environment_get_ptr(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend)
|
||||
return NULL;
|
||||
return frontend->environment_get;
|
||||
}
|
||||
|
||||
bool frontend_driver_has_get_video_driver_func(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_video_driver)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
const struct video_driver *frontend_driver_get_video_driver(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_video_driver)
|
||||
return NULL;
|
||||
return frontend->get_video_driver();
|
||||
}
|
||||
|
||||
void frontend_driver_exitspawn(char *s, size_t len, char *args)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->exitspawn)
|
||||
return;
|
||||
frontend->exitspawn(s, len, args);
|
||||
}
|
||||
|
||||
void frontend_driver_deinit(void *args)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->deinit)
|
||||
return;
|
||||
frontend->deinit(args);
|
||||
}
|
||||
|
||||
void frontend_driver_shutdown(bool a)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->shutdown)
|
||||
return;
|
||||
frontend->shutdown(a);
|
||||
}
|
||||
|
||||
enum frontend_architecture frontend_driver_get_cpu_architecture(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_architecture)
|
||||
return FRONTEND_ARCH_NONE;
|
||||
return frontend->get_architecture();
|
||||
}
|
||||
|
||||
const void *frontend_driver_get_cpu_architecture_str(
|
||||
char *architecture, size_t size)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
enum frontend_architecture arch = frontend_driver_get_cpu_architecture();
|
||||
|
||||
switch (arch)
|
||||
{
|
||||
case FRONTEND_ARCH_X86:
|
||||
strlcpy(architecture, "x86", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_X86_64:
|
||||
strlcpy(architecture, "x64", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_PPC:
|
||||
strlcpy(architecture, "PPC", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_ARM:
|
||||
strlcpy(architecture, "ARM", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_ARMV7:
|
||||
strlcpy(architecture, "ARMv7", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_ARMV8:
|
||||
strlcpy(architecture, "ARMv8", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_MIPS:
|
||||
strlcpy(architecture, "MIPS", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_TILE:
|
||||
strlcpy(architecture, "Tilera", size);
|
||||
break;
|
||||
case FRONTEND_ARCH_NONE:
|
||||
default:
|
||||
strlcpy(architecture, "N/A", size);
|
||||
break;
|
||||
}
|
||||
|
||||
return frontend;
|
||||
}
|
||||
|
||||
uint64_t frontend_driver_get_total_memory(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_total_mem)
|
||||
return 0;
|
||||
return frontend->get_total_mem();
|
||||
}
|
||||
|
||||
uint64_t frontend_driver_get_free_memory(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_free_mem)
|
||||
return 0;
|
||||
return frontend->get_free_mem();
|
||||
}
|
||||
|
||||
void frontend_driver_install_signal_handler(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->install_signal_handler)
|
||||
return;
|
||||
frontend->install_signal_handler();
|
||||
}
|
||||
|
||||
int frontend_driver_get_signal_handler_state(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_signal_handler_state)
|
||||
return -1;
|
||||
return frontend->get_signal_handler_state();
|
||||
}
|
||||
|
||||
void frontend_driver_set_signal_handler_state(int value)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->set_signal_handler_state)
|
||||
return;
|
||||
frontend->set_signal_handler_state(value);
|
||||
}
|
||||
|
||||
void frontend_driver_attach_console(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->attach_console)
|
||||
return;
|
||||
frontend->attach_console();
|
||||
}
|
||||
|
||||
void frontend_driver_detach_console(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->detach_console)
|
||||
return;
|
||||
frontend->detach_console();
|
||||
}
|
||||
|
||||
void frontend_driver_destroy_signal_handler_state(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->destroy_signal_handler_state)
|
||||
return;
|
||||
frontend->destroy_signal_handler_state();
|
||||
}
|
||||
|
||||
bool frontend_driver_can_watch_for_changes(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->watch_path_for_changes)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void frontend_driver_watch_path_for_changes(
|
||||
struct string_list *list, int flags,
|
||||
path_change_data_t **change_data)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->watch_path_for_changes)
|
||||
return;
|
||||
frontend->watch_path_for_changes(list, flags, change_data);
|
||||
}
|
||||
|
||||
bool frontend_driver_check_for_path_changes(path_change_data_t *change_data)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->check_for_path_changes)
|
||||
return false;
|
||||
return frontend->check_for_path_changes(change_data);
|
||||
}
|
||||
|
||||
void frontend_driver_set_sustained_performance_mode(bool on)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->set_sustained_performance_mode)
|
||||
return;
|
||||
frontend->set_sustained_performance_mode(on);
|
||||
}
|
||||
|
||||
const char* frontend_driver_get_cpu_model_name(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_cpu_model_name)
|
||||
return NULL;
|
||||
return frontend->get_cpu_model_name();
|
||||
}
|
||||
|
||||
enum retro_language frontend_driver_get_user_language(void)
|
||||
{
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
frontend_ctx_driver_t *frontend = p_rarch->current_frontend_ctx;
|
||||
if (!frontend || !frontend->get_user_language)
|
||||
return RETRO_LANGUAGE_ENGLISH;
|
||||
return frontend->get_user_language();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user