aboutsummaryrefslogtreecommitdiffstats
path: root/src/Main.cxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Main: don't measure DatabaseGlobalDeinit() timeMax Kellermann2014-02-011-4/+0
| | | | Useless information.
* db: add compile-time option to disable databaseMax Kellermann2014-01-301-3/+20
|
* db/update: convert to OO APIMax Kellermann2014-01-301-6/+11
| | | | | Move global variables into the new classes. That may allow multiple update threads for multiple databases one day.
* Main, OutputThread: increase kernel timer slack (Linux)Max Kellermann2014-01-301-0/+5
| | | | | Allows the kernel to combine timer wakeups with other processes, reducing power usage.
* InotifyUpdate: pass EventLoop to mpd_inotify_init()Max Kellermann2014-01-291-1/+2
|
* Listen: pass EventLoop to listen_global_init()Max Kellermann2014-01-291-1/+1
| | | | Don't use global variables.
* OutputAll: convert to class, move instance to class PartitionMax Kellermann2014-01-281-4/+2
| | | | Another big chunk of code for multi-player support.
* neighbor: new subsystem to detect file servers on the local networkMax Kellermann2014-01-261-0/+30
| | | | | | | | | | | | | This commit adds the NeighborPlugin API which can be used to detect nearby file servers that can be used by input plugins. This list of servers is exported using the new "listneighbors" command. The idle even "neighbor" notifies interested clients when a new neighbor is found or an existing one is lost. There's a lot missing currently: protocol&user documentation, and a way to "mount" remote servers into the music database. Obviously, some code from the UPnP database plugin can be moved to a neighbor plugin.
* Mixer*: move to mixer/Max Kellermann2014-01-241-1/+1
|
* Database*: move to db/Max Kellermann2014-01-241-4/+4
|
* Sticker*: move to sticker/Max Kellermann2014-01-241-1/+1
|
* move daemonization code to unix/Max Kellermann2014-01-241-2/+2
|
* Input*: move to input/Max Kellermann2014-01-241-1/+1
|
* Client*: move to client/Max Kellermann2014-01-241-2/+2
|
* Update*: move to update/Max Kellermann2014-01-241-2/+2
|
* Config*: move to config/Max Kellermann2014-01-241-4/+4
|
* Zeroconf*: move to zeroconf/Max Kellermann2014-01-241-1/+1
|
* archive/*: move to archive/plugins/Max Kellermann2014-01-241-1/+1
|
* decoder/*: move to decoder/plugins/Max Kellermann2014-01-241-1/+1
|
* output/*: move to output/plugins/Max Kellermann2014-01-231-1/+1
|
* playlist/*: move to playlist/plugins/Max Kellermann2014-01-231-1/+1
|
* Main: glue_mapper_init() returns true if GetUserMusicDir() failsMax Kellermann2014-01-221-1/+1
| | | | Not a fatal error. Fixes assertion failure.
* Daemon: fork as early as possibleMax Kellermann2014-01-181-1/+2
| | | | | | | Keep the parent process around until MPD has finished initializing. This is important for libraries that are allergic to fork(), such as libupnp.
* Main: make variables more localMax Kellermann2014-01-181-13/+9
|
* Main: eliminate variable "success"Max Kellermann2014-01-181-10/+7
|
* copyright year 2014Max Kellermann2014-01-131-1/+1
|
* DatabasePlugin: add interface DatabaseListenerMax Kellermann2014-01-111-1/+1
| | | | Allow database plugins to announce that they have been modified.
* configure.ac: add option "--disable-glib"Max Kellermann2013-12-151-1/+7
| | | | | Allows building without GLib. This fails to compile currently, because GLib is still used in the MPD core.
* Main: use standard directory APIDenis Krjuchkov2013-12-081-7/+4
|
* PcmConvert: add pcm_convert_global_init()Max Kellermann2013-11-291-2/+2
| | | | | Wrapper for pcm_resample_global_init(), just in case other PCM libraries need initialization, too.
* include cleanup using iwyuMax Kellermann2013-11-281-3/+0
|
* Main.cxx: initialize winsock before creating IO threadDenis Krjuchkov2013-11-261-1/+1
| | | | Otherwise sockets can't be created during IO thread initialization.
* Volume, Output: use new class PeriodClock instead of GTimerMax Kellermann2013-11-251-1/+0
|
* Stats: use monotonic clock instead of GTimerMax Kellermann2013-11-241-1/+0
| | | | Reduce GLib usage.
* Log: add level "DEFAULT"Max Kellermann2013-11-041-8/+8
| | | | | | Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only logged on log_level "secure".
* increase default buffer size to 4 MBMax Kellermann2013-10-301-1/+1
| | | | | | 2 MB was too small for cross-fading a 24 bit file. Increasing to 4 MB is still not too large for weak machines, but is enough for cross-fading.
* Main: check the g_get_user_special_dir() resultMax Kellermann2013-10-301-4/+7
| | | | Fixes crash.
* Main: convert anonymous enum to constexprMax Kellermann2013-10-201-4/+2
|
* *Commands: move to src/command/Max Kellermann2013-10-201-1/+1
|
* *: use references instead of pointersMax Kellermann2013-10-191-1/+1
|
* fs/Path: rename to AllocatedPathMax Kellermann2013-10-171-10/+13
| | | | | | | The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object.
* fs/Path: move configuration code to Config.cxxMax Kellermann2013-10-171-1/+2
|
* UpdateGlue: never pass null to update_enqueue()Max Kellermann2013-10-171-1/+1
|
* Main: use ThreadId instead of GThread*Max Kellermann2013-10-171-2/+3
|
* ConfigData: use std::string for config_param::valueMax Kellermann2013-10-151-5/+6
|
* replay_gain_*.h: rename to *.hxxMax Kellermann2013-10-021-1/+1
|
* Stats: rename stats.h to Stats.hxxMax Kellermann2013-10-021-4/+1
|
* Log: new logging library APIMax Kellermann2013-10-021-20/+24
| | | | | Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
* PlayerThread: use {decoder,player}_control referencesMax Kellermann2013-09-261-1/+1
|
* Main: fix crash if no database was configuredMax Kellermann2013-09-261-0/+3
| | | | Add nullptr check, and return early from glue_db_init_and_load().