aboutsummaryrefslogtreecommitdiffstats
path: root/src/DecoderControl.hxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
* DecoderControl: reduce the number of PlayerThread wakeupsMax Kellermann2013-11-061-3/+11
| | | | | Wake up the PlayerThread only if it is really waiting for the decoder. This greatly reduces the number of system calls in the DecoderThread.
* DecoderControl: convert mutex and client_cond to a referenceMax Kellermann2013-10-281-3/+14
| | | | | | | | Share the Mutex between the DecoderThread and the PlayerThread. This simplifies synchronization between the two threads and fixes a freeze problem: while the PlayerThread waits for the DeocderThread, it cannot answer requests from the main thread, and the main thread will block until the DecoderThread finishes.
* decoder_control: rename to DecoderControlMax Kellermann2013-10-281-6/+6
|
* DecoderControl: move code/attributes to new class MixRampInfoMax Kellermann2013-10-261-8/+9
|
* DecoderThread: move code to DecoderControl::CycleMixRamp()Max Kellermann2013-10-261-1/+6
|
* DecoderControl: add MixRamp gettersMax Kellermann2013-10-261-0/+12
|
* Song: pass reference to song_equals()Max Kellermann2013-10-211-2/+2
|
* Thread/Thread: replacement library for GThreadMax Kellermann2013-10-171-4/+5
|
* DecoderControl: use GLib forward declarationsMax Kellermann2013-09-271-2/+1
|
* DecoderControl: convert "enum decoder_state" to strictly-typed enumMax Kellermann2013-09-271-16/+22
|
* DecoderCommand: convert to strictly-typed enumMax Kellermann2013-09-271-8/+8
|
* DecoderControl: convert functions to methodsMax Kellermann2013-09-271-0/+47
|
* MusicBuffer: expose the C++ APIMax Kellermann2013-09-261-2/+3
|
* MusicPipe: expose the C++ APIMax Kellermann2013-09-261-2/+3
|
* util/Error: new error passing libraryMax Kellermann2013-09-041-12/+16
| | | | Replaces GLib's GError.
* audio_format: convert to C++Max Kellermann2013-08-031-3/+3
|
* song: convert header to C++Max Kellermann2013-07-281-4/+6
|
* decoder_api: convert to C++Max Kellermann2013-07-281-1/+1
|
* DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann2013-01-271-8/+10
|
* DecoderControl: move functions into the classMax Kellermann2013-01-211-188/+135
|
* PlayerControl: move functions into the classMax Kellermann2013-01-201-0/+9
|
* DecoderControl: take ownership of client_condMax Kellermann2013-01-101-1/+1
| | | | | Don't let the "client" pass its own GCond. This was not used consistently.
* decoder_*: convert to C++Max Kellermann2013-01-041-0/+339