aboutsummaryrefslogtreecommitdiffstats
path: root/src/PlayerControl.hxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output: rename struct audio_output to AudioOutputMax Kellermann2014-01-281-1/+1
|
* OutputAll: convert to class, move instance to class PartitionMax Kellermann2014-01-281-1/+5
| | | | Another big chunk of code for multi-player support.
* copyright year 2014Max Kellermann2014-01-131-1/+1
|
* DetachedSong: fork of struct SongMax Kellermann2014-01-091-18/+18
| | | | | | From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
* *: update copyright year to 2013Max Kellermann2013-10-301-1/+1
|
* PlayerControl: move attributes to struct CrossFadeSettingsMax Kellermann2013-10-291-6/+7
|
* player_control: rename to PlayerControlMax Kellermann2013-10-281-7/+7
|
* Playlist: copy stream tags from the PlayerThreadMax Kellermann2013-10-221-1/+42
| | | | | | Finally restores an important feature that has been broken for several months when the PlayerThread started working with Song copies instead of pointers to the Queue's Song instances (commit e96779d).
* PlayerControl: GetError() returns an Error, not a char*Max Kellermann2013-10-171-5/+23
|
* Thread/Thread: replacement library for GThreadMax Kellermann2013-10-171-8/+8
|
* PlayerControl: use strictly typed enumsMax Kellermann2013-09-271-38/+37
|
* PlayerControl: convert functions to methodsMax Kellermann2013-09-271-0/+55
|
* PlayerThread: move code to player_control::CommandFinished()Max Kellermann2013-09-271-0/+14
|
* util/Error: new error passing libraryMax Kellermann2013-09-041-4/+4
| | | | 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/+5
|
* PlayerControl: add second Cond objectMax Kellermann2013-01-251-0/+32
| | | | | | | | | | | | | This fixes a deadlock bug introduced by 18076ac9. After all, the second Cond was necessary. The problem: two threads can wait for a signal at the same time. The player thread waits for the output thread to finish playback. The main thread waits for the player thread to complete a command. The output thread finishes playback, and sends a signal, which unfortunately does not wake up the player thread, but the main thread. The main thread sees that the command is still not finished, and waits again. The signal is lost forever, and MPD is deadlocked.
* PlayerControl: move functions into the classMax Kellermann2013-01-201-167/+121
|
* PlayerControl: switch to the Mutex/Cond classesMax Kellermann2013-01-101-6/+8
|
* PlayerControl: add constructor and destructorMax Kellermann2013-01-041-6/+4
|
* player_control.h: convert header to C++Max Kellermann2013-01-041-0/+339