pianod2
multisource multiuser scriptable networked music player
Typedefs | Enumerations | Functions | Variables
servicemanager.cpp File Reference

Handle commands controlling the overall pianod deamon/service. More...

#include <config.h>
#include <cstdio>
#include <cassert>
#include <ctime>
#include <sstream>
#include <iomanip>
#include <functional>
#include <football/football.h>
#include <parsnip/parsnip_schema.h>
#include "fundamentals.h"
#include "lookup.h"
#include "utility.h"
#include "sources.h"
#include "connection.h"
#include "engine.h"
#include "response.h"
#include "user.h"
#include "users.h"
#include "servicemanager.h"
#include "mediamanager.h"
#include "audiooptionsparser.h"
#include "musiclibraryparameters.h"
#include "tuner.h"
#include "predicate.h"
Include dependency graph for servicemanager.cpp:

Typedefs

typedef enum service_commands_t SERVICECOMMAND
 

Enumerations

enum class  LoggingAction { SET , ENABLE , DISABLE , TOGGLE }
 
enum  service_commands_t {
  NOP = CMD_RANGE_SERVICE , HELP , SCHEMAHELP , YELL ,
  QUIT , NEWROOM , DELETEROOM , ROOMINFO ,
  CHOOSEROOM , INROOMEXEC , LISTROOMS , SHUTDOWN ,
  GETLOGGINGFLAGS , SETLOGGINGFLAGS , ALTERLOGGINGFLAGS , SHOWUSERACTIONS ,
  SYNC , UPTIME
}
 

Functions

static Parsnip::ParserRef construct_parser ()
 Construct a parser for use by all rooms. More...
 

Variables

static const LookupTable< LoggingActionLoggingActions
 
static std::initializer_list< StandardLookupValues< LogType > > LoggingFlagValues
 
static const LookupTable< LogTypeLoggingFlags { LoggingFlagValues }
 
ServiceManagerservice_manager { nullptr }
 

Detailed Description

Handle commands controlling the overall pianod deamon/service.

Manages "rooms": separate services each with its own audio etc.

Typedef Documentation

◆ SERVICECOMMAND

Enumeration Type Documentation

◆ LoggingAction

enum LoggingAction
strong
Enumerator
SET 
ENABLE 
DISABLE 
TOGGLE 

◆ service_commands_t

Enumerator
NOP 
HELP 
SCHEMAHELP 
YELL 
QUIT 
NEWROOM 
DELETEROOM 
ROOMINFO 
CHOOSEROOM 
INROOMEXEC 
LISTROOMS 
SHUTDOWN 
GETLOGGINGFLAGS 
SETLOGGINGFLAGS 
ALTERLOGGINGFLAGS 
SHOWUSERACTIONS 
SYNC 
UPTIME 

Function Documentation

◆ construct_parser()

static Parsnip::ParserRef construct_parser ( )
static

Construct a parser for use by all rooms.

Here is the call graph for this function:

Variable Documentation

◆ LoggingActions

const LookupTable<LoggingAction> LoggingActions
static
Initial value:

◆ LoggingFlags

const LookupTable<LogType> LoggingFlags { LoggingFlagValues }
static

◆ LoggingFlagValues

std::initializer_list<StandardLookupValues<LogType> > LoggingFlagValues
static
Initial value:
{
{ "state", Log::LOG_000 },
{ "information", Log::LOG_100 },
{ "successes", Log::LOG_200 },
{ "diagnostics", Log::LOG_300 },
{ "errors", Log::LOG_400 },
{ "failures", Log::LOG_500 },
{ "general", Log::GENERAL },
{ "queue", Log::QUEUE },
{ "warnings", Log::WARNING },
{ "actions", Log::USERACTION },
{ "protocol", Log::PROTOCOL },
{ "allocations", Log::ALLOCATIONS },
{ "caches", Log::CACHES },
{ "tuning", Log::TUNING },
{ "biasing", Log::BIASING },
{ "metadata", Log::METADATA },
{ "audio", Log::AUDIO },
{ "pandora", Log::PANDORA },
{ "filesystem", Log::FILESYSTEM }
}

◆ service_manager

ServiceManager* service_manager { nullptr }