102 Patches: Detours to the Rescue
C reference for DttR maintainers and modders.
Loading...
Searching...
No Matches
mss_core.c File Reference
#include "mss_private.h"
#include <dttr_log.h>
#include <dttr_config.h>
#include <string.h>

Go to the source code of this file.

Functions

static int * preference_slot (unsigned int preference)
static void clear_desired_spec ()
bool dttr_mss_core_has_driver ()
void dttr_mss_core_reset_preferences ()
void dttr_mss_core_ensure_preferences ()
int dttr_mss_core_get_preference (unsigned int preference)
int dttr_mss_core_set_preference (unsigned int preference, int value)
float dttr_mss_core_sample_headroom_gain ()
float dttr_mss_core_sample_preemphasis ()
bool dttr_mss_core_ensure_mix_initialized ()
bool dttr_mss_core_ensure_mixer ()
void dttr_mss_core_destroy_mixer ()
MIX_Mixer * dttr_mss_core_mixer ()
SDL_AudioSpec dttr_mss_core_mixer_spec ()
void dttr_mss_core_set_desired_spec (const SDL_AudioSpec *spec)
int dttr_mss_core_driver_open_count ()
void dttr_mss_core_increment_driver_open_count ()
void dttr_mss_core_decrement_driver_open_count ()
void dttr_mss_core_reset_driver_open_count ()
float dttr_mss_core_master_gain ()
void dttr_mss_core_set_master_gain (float gain)

Variables

static MIX_Mixer * mixer
static bool mix_initialized
static int driver_open_count
static float master_gain = DTTR_MSS_DEFAULT_MASTER_GAIN
static int preferences [DTTR_MSS_PREFERENCES_CAPACITY]
static SDL_AudioSpec desired_spec
static SDL_AudioSpec mixer_spec
static bool has_desired_spec
static bool preferences_initialized

Function Documentation

◆ clear_desired_spec()

void clear_desired_spec ( )
static

Definition at line 27 of file mss_core.c.

References desired_spec, and has_desired_spec.

Referenced by dttr_mss_core_destroy_mixer(), and dttr_mss_core_set_desired_spec().

◆ dttr_mss_core_decrement_driver_open_count()

void dttr_mss_core_decrement_driver_open_count ( )

Definition at line 172 of file mss_core.c.

References driver_open_count.

Referenced by dttr_mss_ail_waveOutClose().

◆ dttr_mss_core_destroy_mixer()

void dttr_mss_core_destroy_mixer ( )

Definition at line 131 of file mss_core.c.

References clear_desired_spec(), mix_initialized, mixer, mixer_spec, and NULL.

Referenced by dttr_mss_sdl_shutdown().

◆ dttr_mss_core_driver_open_count()

int dttr_mss_core_driver_open_count ( )

Definition at line 164 of file mss_core.c.

References driver_open_count.

Referenced by dttr_mss_ail_waveOutClose(), and dttr_mss_ail_waveOutOpen().

◆ dttr_mss_core_ensure_mix_initialized()

bool dttr_mss_core_ensure_mix_initialized ( )

Definition at line 79 of file mss_core.c.

References DTTR_LOG_ERROR, and mix_initialized.

Referenced by dttr_mss_ail_startup(), and dttr_mss_core_ensure_mixer().

◆ dttr_mss_core_ensure_mixer()

◆ dttr_mss_core_ensure_preferences()

◆ dttr_mss_core_get_preference()

int dttr_mss_core_get_preference ( unsigned int preference)

◆ dttr_mss_core_has_driver()

bool dttr_mss_core_has_driver ( )

Definition at line 32 of file mss_core.c.

References driver_open_count, and mixer.

Referenced by has_audio_driver().

◆ dttr_mss_core_increment_driver_open_count()

void dttr_mss_core_increment_driver_open_count ( )

Definition at line 168 of file mss_core.c.

References driver_open_count.

Referenced by dttr_mss_ail_waveOutOpen().

◆ dttr_mss_core_master_gain()

float dttr_mss_core_master_gain ( )

Definition at line 184 of file mss_core.c.

References master_gain.

Referenced by apply_sample_gain(), and apply_stream_gain().

◆ dttr_mss_core_mixer()

◆ dttr_mss_core_mixer_spec()

SDL_AudioSpec dttr_mss_core_mixer_spec ( )

Definition at line 150 of file mss_core.c.

References mixer_spec.

Referenced by render_sample_audio().

◆ dttr_mss_core_reset_driver_open_count()

void dttr_mss_core_reset_driver_open_count ( )

Definition at line 180 of file mss_core.c.

References driver_open_count.

Referenced by dttr_mss_sdl_shutdown().

◆ dttr_mss_core_reset_preferences()

void dttr_mss_core_reset_preferences ( )

◆ dttr_mss_core_sample_headroom_gain()

float dttr_mss_core_sample_headroom_gain ( )

Definition at line 71 of file mss_core.c.

References dttr_config.

Referenced by apply_sample_gain().

◆ dttr_mss_core_sample_preemphasis()

float dttr_mss_core_sample_preemphasis ( )

Definition at line 75 of file mss_core.c.

References dttr_config.

Referenced by render_sample_audio().

◆ dttr_mss_core_set_desired_spec()

void dttr_mss_core_set_desired_spec ( const SDL_AudioSpec * spec)

Definition at line 154 of file mss_core.c.

References clear_desired_spec(), desired_spec, and has_desired_spec.

Referenced by dttr_mss_ail_waveOutOpen().

◆ dttr_mss_core_set_master_gain()

void dttr_mss_core_set_master_gain ( float gain)

Definition at line 188 of file mss_core.c.

References master_gain.

Referenced by dttr_mss_ail_set_digital_master_volume(), and dttr_mss_sdl_shutdown().

◆ dttr_mss_core_set_preference()

int dttr_mss_core_set_preference ( unsigned int preference,
int value )

Definition at line 59 of file mss_core.c.

References dttr_mss_core_ensure_preferences(), and preference_slot().

Referenced by dttr_mss_ail_set_preference().

◆ preference_slot()

int * preference_slot ( unsigned int preference)
static

Definition at line 19 of file mss_core.c.

References NULL, and preferences.

Referenced by dttr_mss_core_get_preference(), and dttr_mss_core_set_preference().

Variable Documentation

◆ desired_spec

SDL_AudioSpec desired_spec
static

◆ driver_open_count

◆ has_desired_spec

bool has_desired_spec
static

◆ master_gain

◆ mix_initialized

bool mix_initialized
static

Definition at line 10 of file mss_core.c.

Referenced by dttr_mss_core_destroy_mixer(), and dttr_mss_core_ensure_mix_initialized().

◆ mixer

MIX_Mixer* mixer
static

◆ mixer_spec

SDL_AudioSpec mixer_spec
static

◆ preferences

int preferences[DTTR_MSS_PREFERENCES_CAPACITY]
static

◆ preferences_initialized

bool preferences_initialized
static

Definition at line 17 of file mss_core.c.

Referenced by dttr_mss_core_ensure_preferences(), and dttr_mss_core_reset_preferences().