Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-02-05 | playlist/Registry: add RAII class | Max Kellermann | |
2019-02-05 | decoder/List: add RAII class | Max Kellermann | |
2019-02-05 | input/Init: add RAII class | Max Kellermann | |
2019-02-05 | test/ConfigGlue: merge duplicate code from various debug programs | Max Kellermann | |
2018-11-19 | check.h: remove obsolete header | Max Kellermann | |
Since we switched from autotools to Meson in commit 94592c14062d5afc9482d11baa401648082022c0, we don't need to include `config.h` early to properly enable large file support. Meson passes the required macros on the compiler command line instead of defining them in `config.h`. This means we can include `config.h` at any time, whenever we want to check its macros, and there are no ordering constraints. | |||
2018-10-31 | *: copyright year 2018 | Max Kellermann | |
2018-08-19 | test/dump_playlist: allocate ConfigData on the stack | Max Kellermann | |
2018-08-02 | DetachedSong, db/LightSong, SongFilter: move to src/song/ | Max Kellermann | |
2018-07-17 | playlist/Registry: use struct ConfigData | Max Kellermann | |
2018-07-17 | input/Init: use struct ConfigData | Max Kellermann | |
2018-07-17 | decoder/List: use struct ConfigData | Max Kellermann | |
2018-07-17 | test/*: catch and print all exceptions | Max Kellermann | |
2018-07-16 | config/Config*: rename files, drop "Config" prefix | Max Kellermann | |
2018-06-22 | input/Stream: remove attribute "cond", replace with handler interface | Max Kellermann | |
This adds a bit of overhead, but also adds flexibility to the API, because arbitrary triggers may be invoked from that virtual method implementation, not just Cond::signal(). The motivation for this is to make the handlers more dynamic, for the upcoming buffering class utilizing ProxyInputStream. | |||
2018-01-20 | playlist/Plugin: use std::unique_ptr<SongEnumerator> | Max Kellermann | |
2017-02-10 | test/*: use class EventThread instead of ScopeIOThread | Max Kellermann | |
2017-01-26 | input/Plugin: pass EventLoop& to init() | Max Kellermann | |
Eliminate dependency on io_thread_get(). | |||
2017-01-03 | update copyright year | Max Kellermann | |
2016-09-09 | input/Plugin: migrate open() from class Error to C++ exceptions | Max Kellermann | |
2016-09-09 | input/Plugin: migrate init() from class Error to C++ exceptions | Max Kellermann | |
2016-02-26 | update copyright year to 2016 | Max Kellermann | |
2016-02-21 | playlist/Plugin: pass InputStreamPtr&& to open_stream() | Max Kellermann | |
Obsolete class CloseSongEnumerator, which was a kludge. | |||
2016-02-21 | input: wrap InputStream in std::unique_ptr | Max Kellermann | |
2016-02-07 | playlist/SongEnumerator: wrap song in std::unique_ptr | Max Kellermann | |
2015-12-18 | fs/io/Reader: use C++ exceptions instead of class Error | Max Kellermann | |
2015-12-16 | config/ConfigFile: use std::exception on syntax error | Max Kellermann | |
2015-01-01 | Copyright year 2015 | Max Kellermann | |
2014-12-05 | configure.ac: require GLib 2.32 (if enabled) | Max Kellermann | |
Since version 2.32, g_thread_init() is deprecated and a no-op. Let's upgrade that (optional) dependency so we can remove all those g_thread_init() calls. | |||
2014-10-07 | test/run_input, ...: add struct ScopeIOThread | Max Kellermann | |
Auto-stop the IO thread in all error handlers. | |||
2014-08-28 | DetachedSong: use std::chrono::duration for start_ms and end_ms | Max Kellermann | |
2014-08-07 | fs/output, fs/TextFile: move to fs/io/ | Max Kellermann | |
2014-07-30 | *Save, *State: use the OutputStream API instead of FILE* | Max Kellermann | |
2014-05-11 | InputStream: add virtual destructor | Max Kellermann | |
Replaces the method Close(). | |||
2014-03-16 | test/{run_decoder,dump_playlist}: fix accidental search/replace hiccups | Max Kellermann | |
2014-02-18 | test: various fixups for building without GLib | Max Kellermann | |
2014-01-24 | Input*: move to input/ | Max Kellermann | |
2014-01-24 | Config*: move to config/ | Max Kellermann | |
2014-01-24 | decoder/*: move to decoder/plugins/ | Max Kellermann | |
2014-01-23 | playlist/*: move to playlist/plugins/ | Max Kellermann | |
2014-01-13 | copyright year 2014 | Max Kellermann | |
2014-01-09 | DetachedSong: fork of struct Song | Max Kellermann | |
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. | |||
2013-12-29 | InputStream: add static method OpenReady() | Max Kellermann | |
Merge some duplicate code. | |||
2013-12-24 | test/*: use fprintf(stderr,...) and Log() instead of g_printerr() | Max Kellermann | |
Avoid GLib. | |||
2013-12-24 | test/*: remove GLib logging setup | Max Kellermann | |
Obsolete, our logging library doesn't ues GLib anymore. | |||
2013-12-14 | test: merge duplicate code to FakeDecoderAPI.cxx | Max Kellermann | |
2013-10-26 | DecoderControl: move code/attributes to new class MixRampInfo | Max Kellermann | |
2013-10-25 | ReplayGainInfo: refactor to a class | Max Kellermann | |
2013-10-25 | ReplayGainInfo: use CamelCase for struct name | Max Kellermann | |
2013-10-23 | input_stream: rename struct to InputStream | Max Kellermann | |
2013-10-21 | decoder: rename the struct to "Decoder" | Max Kellermann | |