// stop playing. void stop() { if (thread_handle != INVALID_HANDLE_VALUE) { killDecodeThread=1; if (WaitForSingleObject(thread_handle,10000) == WAIT_TIMEOUT) { MessageBox(mod.hMainWindow,"error asking thread to die!\n", "error killing decode thread",0); TerminateThread(thread_handle,0); } CloseHandle(thread_handle); thread_handle = INVALID_HANDLE_VALUE; } // close output system mod.outMod->Close(); // deinitialize visualization mod.SAVSADeInit(); // CHANGEME! Write your own file closing code here if (input_file != INVALID_HANDLE_VALUE) { CloseHandle(input_file); input_file=INVALID_HANDLE_VALUE; } }
void stop() { killPlayThread=1; if (play_thread_handle != INVALID_HANDLE_VALUE) { if (WaitForSingleObject(play_thread_handle, INFINITE) == WAIT_TIMEOUT) TerminateThread(play_thread_handle,0); CloseHandle(play_thread_handle); play_thread_handle = INVALID_HANDLE_VALUE; } faacDecClose(hDecoder); close_filestream(infile); mod.outMod->Close(); mod.SAVSADeInit(); if (memmap_buffer) LocalFree(memmap_buffer); if(seek_table) { free(seek_table); seek_table = NULL; seek_table_length = 0; } }
void stop() { if (thread_handle != INVALID_HANDLE_VALUE) { if (paused) unpause(); killDecodeThread=1; if (WaitForSingleObject(thread_handle,5000) == WAIT_TIMEOUT) { MessageBox(mod.hMainWindow,"error asking thread to die!\n","error killing decode thread",0); TerminateThread(thread_handle,0); } CloseHandle(thread_handle); thread_handle = INVALID_HANDLE_VALUE; } if (input_file != INVALID_HANDLE_VALUE) { CloseHandle(input_file); input_file=INVALID_HANDLE_VALUE; } GSFClose(); mod.outMod->Close(); mod.SAVSADeInit(); }
static void stop() { PostThreadMessage( self->PlayThreadID, WM_QUIT, 0, 0 ); WaitForSingleObject( self->PlayThread, INFINITE ); CloseHandle( self->PlayThread ); self->PlayThread = 0; self->PlayThreadID = 0; delete self->mod; self->mod = 0; inmod.outMod->Close(); inmod.SAVSADeInit(); }
static void stop(void) { if (thread_handle != NULL) { thread_run = FALSE; // wait max 10 seconds if (WaitForSingleObject(thread_handle, 10 * 1000) == WAIT_TIMEOUT) TerminateThread(thread_handle, 0); CloseHandle(thread_handle); thread_handle = NULL; } mod.outMod->Close(); mod.SAVSADeInit(); }
void stop() { if(thread_handle != INVALID_HANDLE_VALUE) { killDecodeThread = 1; if(WaitForSingleObject(thread_handle, INFINITE) == WAIT_TIMEOUT) { MessageBox(mod_.hMainWindow, "error asking thread to die!\n", "error killing decode thread", 0); TerminateThread(thread_handle, 0); } CloseHandle(thread_handle); thread_handle = INVALID_HANDLE_VALUE; } safe_decoder_finish_(decoder_); mod_.outMod->Close(); mod_.SAVSADeInit(); }
static void stop() { if (thread_handle) { stream_data_.is_playing = false; if (WaitForSingleObject(thread_handle, 2000) == WAIT_TIMEOUT) { FLAC_plugin__show_error("Error while stopping decoding thread."); TerminateThread(thread_handle, 0); } CloseHandle(thread_handle); thread_handle = NULL; } FLAC_plugin__decoder_finish(decoder_); mod_.outMod->Close(); mod_.SAVSADeInit(); }