mirror of
https://github.com/libretro/RetroArch
synced 2025-02-21 09:39:56 +00:00
Refactor away audio_driver_set_callback_state
This commit is contained in:
parent
b7d3f3b01c
commit
009329969a
@ -681,14 +681,6 @@ void audio_driver_set_buffer_size(size_t bufsize)
|
||||
audio_driver_data.driver_buffer_size = bufsize;
|
||||
}
|
||||
|
||||
void audio_driver_callback_set_state(bool state)
|
||||
{
|
||||
if (!audio_driver_ctl(RARCH_AUDIO_CTL_HAS_CALLBACK, NULL))
|
||||
return;
|
||||
|
||||
if (audio_driver_data.audio_callback.set_state)
|
||||
audio_driver_data.audio_callback.set_state(state);
|
||||
}
|
||||
|
||||
static void audio_monitor_adjust_system_rates(void)
|
||||
{
|
||||
@ -812,6 +804,20 @@ bool audio_driver_ctl(enum rarch_audio_ctl_state state, void *data)
|
||||
case RARCH_AUDIO_CTL_SETUP_REWIND:
|
||||
audio_driver_setup_rewind();
|
||||
return true;
|
||||
case RARCH_AUDIO_CTL_SET_CALLBACK_ENABLE:
|
||||
if (!audio_driver_ctl(RARCH_AUDIO_CTL_HAS_CALLBACK, NULL))
|
||||
return false;
|
||||
|
||||
if (audio_driver_data.audio_callback.set_state)
|
||||
audio_driver_data.audio_callback.set_state(true);
|
||||
return true;
|
||||
case RARCH_AUDIO_CTL_SET_CALLBACK_DISABLE:
|
||||
if (!audio_driver_ctl(RARCH_AUDIO_CTL_HAS_CALLBACK, NULL))
|
||||
return false;
|
||||
|
||||
if (audio_driver_data.audio_callback.set_state)
|
||||
audio_driver_data.audio_callback.set_state(false);
|
||||
return true;
|
||||
case RARCH_AUDIO_CTL_HAS_CALLBACK:
|
||||
return audio_driver_data.audio_callback.callback;
|
||||
case RARCH_AUDIO_CTL_CALLBACK:
|
||||
|
@ -42,6 +42,8 @@ enum rarch_audio_ctl_state
|
||||
RARCH_AUDIO_CTL_MONITOR_SET_REFRESH_RATE,
|
||||
RARCH_AUDIO_CTL_MONITOR_ADJUST_SYSTEM_RATES,
|
||||
RARCH_AUDIO_CTL_MUTE_TOGGLE,
|
||||
RARCH_AUDIO_CTL_SET_CALLBACK_ENABLE,
|
||||
RARCH_AUDIO_CTL_SET_CALLBACK_DISABLE,
|
||||
RARCH_AUDIO_CTL_SET_CALLBACK,
|
||||
RARCH_AUDIO_CTL_UNSET_CALLBACK,
|
||||
RARCH_AUDIO_CTL_CALLBACK,
|
||||
@ -152,9 +154,6 @@ void audio_driver_dsp_filter_init(const char *device);
|
||||
|
||||
void audio_driver_set_buffer_size(size_t bufsize);
|
||||
|
||||
void audio_driver_callback_set_state(bool state);
|
||||
|
||||
|
||||
extern audio_driver_t audio_rsound;
|
||||
extern audio_driver_t audio_oss;
|
||||
extern audio_driver_t audio_alsa;
|
||||
|
@ -189,7 +189,8 @@ static bool audio_thread_stop(void *data)
|
||||
|
||||
audio_thread_block(thr);
|
||||
thr->is_paused = true;
|
||||
audio_driver_callback_set_state(false);
|
||||
|
||||
audio_driver_ctl(RARCH_AUDIO_CTL_SET_CALLBACK_DISABLE, NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -201,7 +202,8 @@ static bool audio_thread_start(void *data)
|
||||
if (!thr)
|
||||
return false;
|
||||
|
||||
audio_driver_callback_set_state(true);
|
||||
audio_driver_ctl(RARCH_AUDIO_CTL_SET_CALLBACK_ENABLE, NULL);
|
||||
|
||||
thr->is_paused = false;
|
||||
audio_thread_unblock(thr);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user