2023-03-06 14:42:04 +01:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
// Copyright The Music Player Daemon Project
|
2008-12-30 19:50:22 +01:00
|
|
|
|
2012-09-28 00:40:00 +02:00
|
|
|
#ifndef MPD_MAIN_HXX
|
|
|
|
#define MPD_MAIN_HXX
|
2008-12-30 19:50:22 +01:00
|
|
|
|
2013-04-17 22:58:33 +02:00
|
|
|
struct Instance;
|
2013-01-10 19:13:00 +01:00
|
|
|
|
2014-03-01 20:20:29 +01:00
|
|
|
#ifdef ANDROID
|
2014-11-02 16:52:43 +01:00
|
|
|
#include "android/LogListener.hxx"
|
|
|
|
|
2019-07-05 09:59:00 +02:00
|
|
|
extern class Context *context;
|
2014-11-02 16:52:43 +01:00
|
|
|
extern LogListener *logListener;
|
2014-03-01 20:20:29 +01:00
|
|
|
#endif
|
|
|
|
|
2019-05-29 21:22:25 +02:00
|
|
|
extern Instance *global_instance;
|
2009-11-03 21:08:48 +01:00
|
|
|
|
2014-03-01 19:09:31 +01:00
|
|
|
#ifndef ANDROID
|
|
|
|
|
2010-09-21 03:28:08 +02:00
|
|
|
/**
|
|
|
|
* A entry point for application.
|
|
|
|
* On non-Windows platforms this is called directly from main()
|
|
|
|
* On Windows platform this is called from win32_main()
|
|
|
|
* after doing some initialization.
|
|
|
|
*/
|
2018-08-01 19:38:25 +02:00
|
|
|
int
|
2021-10-13 16:13:30 +02:00
|
|
|
mpd_main(int argc, char *argv[]);
|
2010-09-21 03:28:08 +02:00
|
|
|
|
2014-03-01 19:09:31 +01:00
|
|
|
#endif
|
|
|
|
|
2017-12-12 10:22:20 +01:00
|
|
|
#ifdef _WIN32
|
2010-09-21 03:28:08 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* If program is run as windows service performs nessesary initialization
|
|
|
|
* and then calls mpd_main() with specified arguments.
|
|
|
|
* If program is run as a regular application calls mpd_main() immediately.
|
|
|
|
*/
|
|
|
|
int
|
|
|
|
win32_main(int argc, char *argv[]);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* When running as a service reports to service control manager
|
|
|
|
* that our service is started.
|
|
|
|
* When running as a console application enables console handler that will
|
2013-01-09 23:12:53 +01:00
|
|
|
* trigger GlobalEvents::SHUTDOWN when user closes console window
|
2010-09-21 03:28:08 +02:00
|
|
|
* or presses Ctrl+C.
|
|
|
|
* This function should be called just before entering main loop.
|
|
|
|
*/
|
|
|
|
void
|
2015-03-03 20:05:08 +01:00
|
|
|
win32_app_started();
|
2010-09-21 03:28:08 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* When running as a service reports to service control manager
|
|
|
|
* that our service is about to stop.
|
|
|
|
* When running as a console application enables console handler that will
|
|
|
|
* catch all shutdown requests and ignore them.
|
|
|
|
* This function should be called just after leaving main loop.
|
|
|
|
*/
|
|
|
|
void
|
2015-03-03 20:05:08 +01:00
|
|
|
win32_app_stopping();
|
2010-09-21 03:28:08 +02:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
2008-12-30 19:50:22 +01:00
|
|
|
#endif
|