audio: Added a ThreadDeinit() method to match ThreadInit.

Not used by any targets at the moment, but will be shortly!
This commit is contained in:
Ryan C. Gordon 2017-02-13 16:55:00 -05:00
parent 886736a2c8
commit 175f1e8f4a
2 changed files with 11 additions and 0 deletions

View file

@ -221,6 +221,11 @@ SDL_AudioThreadInit_Default(_THIS)
{ /* no-op. */ { /* no-op. */
} }
static void
SDL_AudioThreadDeinit_Default(_THIS)
{ /* no-op. */
}
static void static void
SDL_AudioWaitDevice_Default(_THIS) SDL_AudioWaitDevice_Default(_THIS)
{ /* no-op. */ { /* no-op. */
@ -340,6 +345,7 @@ finish_audio_entry_points_init(void)
FILL_STUB(DetectDevices); FILL_STUB(DetectDevices);
FILL_STUB(OpenDevice); FILL_STUB(OpenDevice);
FILL_STUB(ThreadInit); FILL_STUB(ThreadInit);
FILL_STUB(ThreadDeinit);
FILL_STUB(WaitDevice); FILL_STUB(WaitDevice);
FILL_STUB(PlayDevice); FILL_STUB(PlayDevice);
FILL_STUB(GetPendingBytes); FILL_STUB(GetPendingBytes);
@ -712,6 +718,8 @@ SDL_RunAudio(void *devicep)
/* Wait for the audio to drain. */ /* Wait for the audio to drain. */
SDL_Delay(((device->spec.samples * 1000) / device->spec.freq) * 2); SDL_Delay(((device->spec.samples * 1000) / device->spec.freq) * 2);
current_audio.impl.ThreadDeinit(device);
return 0; return 0;
} }
@ -810,6 +818,8 @@ SDL_CaptureAudio(void *devicep)
current_audio.impl.FlushCapture(device); current_audio.impl.FlushCapture(device);
current_audio.impl.ThreadDeinit(device);
return 0; return 0;
} }

View file

@ -67,6 +67,7 @@ typedef struct SDL_AudioDriverImpl
void (*DetectDevices) (void); void (*DetectDevices) (void);
int (*OpenDevice) (_THIS, void *handle, const char *devname, int iscapture); int (*OpenDevice) (_THIS, void *handle, const char *devname, int iscapture);
void (*ThreadInit) (_THIS); /* Called by audio thread at start */ void (*ThreadInit) (_THIS); /* Called by audio thread at start */
void (*ThreadDeinit) (_THIS); /* Called by audio thread at start */
void (*WaitDevice) (_THIS); void (*WaitDevice) (_THIS);
void (*PlayDevice) (_THIS); void (*PlayDevice) (_THIS);
int (*GetPendingBytes) (_THIS); int (*GetPendingBytes) (_THIS);