/******************************************************************************!
* \file Player.h
* \author Sebastien Beaugrand
* \sa http://beaugrand.chez.com/
* \copyright CeCILL 2.1 Free Software license
******************************************************************************/
#include <jsoncpp/json/value.h>
#include <mpd/client.h>
class Player
{
public:
const unsigned int STATE_UNKNOWN = 0;
const unsigned int STATE_PLAY = 2;
const unsigned int STATE_PAUSE = 3;
Player() {}
~Player();
int init();
Json::Value currentAlbum();
Json::Value currentTitle();
void resume(int milliseconds);
unsigned int getPlaytime();
Json::Value titleList();
void start();
void startId(int pos);
void startRel(int pos);
void pause();
void stop();
void m3u(std::string_view album);
std::string musicDirectory;
private:
int isError(const char* func);
struct mpd_status* getMPDStatus();
unsigned int getStatus();
void quit();
struct mpd_connection* mConn = nullptr;
};