pianod2
multisource multiuser scriptable networked music player
Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
Media::SourceParameters Class Reference

Source parameter manager. More...

#include <mediaparameters.h>

Inheritance diagram for Media::SourceParameters:
Inheritance graph
[legend]
Collaboration diagram for Media::SourceParameters:
Collaboration graph
[legend]

Public Member Functions

 SourceParameters (void)
 
 SourceParameters (Ownership::Type perm, User *user=nullptr)
 
 SourceParameters (Ownership::Type perm, const std::string &sourcename)
 
 SourceParameters (const UserData::JSONData &src)
 
virtual ~SourceParameters ()
 
virtual bool persist (UserData::JSONData &dest) const
 
void extractOptions (const Parsnip::Data &options)
 

Static Public Member Functions

static const Parsnip::OptionParser::Definitionsparser_definitions ()
 

Public Attributes

ProxyMode song_proxy = ProxyMode::None
 
Userowner = nullptr
 
Ownership::Type permissions = Ownership::Type::PRIVATE
 
PersistenceMode persistence = PersistenceMode::Temporary
 Persistence state. More...
 
std::string name
 
bool waitForReady = false
 Wait on initialization. Flag never persisted. More...
 

Private Member Functions

void extract (const Parsnip::Data &options)
 

Private Attributes

bool userSpecified = false
 

Detailed Description

Source parameter manager.

Implements common parameters, and can be extended for each source type to support custom parameters.

Constructor & Destructor Documentation

◆ SourceParameters() [1/4]

Media::SourceParameters::SourceParameters ( void  )
inline

◆ SourceParameters() [2/4]

Media::SourceParameters::SourceParameters ( Ownership::Type  perm,
User user = nullptr 
)
Here is the call graph for this function:

◆ SourceParameters() [3/4]

Media::SourceParameters::SourceParameters ( Ownership::Type  perm,
const std::string &  sourcename 
)

◆ SourceParameters() [4/4]

Media::SourceParameters::SourceParameters ( const UserData::JSONData src)
Here is the call graph for this function:

◆ ~SourceParameters()

Media::SourceParameters::~SourceParameters ( )
virtual

Member Function Documentation

◆ extract()

void Media::SourceParameters::extract ( const Parsnip::Data options)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ extractOptions()

void Media::SourceParameters::extractOptions ( const Parsnip::Data options)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ parser_definitions()

const Parsnip::OptionParser::Definitions & Media::SourceParameters::parser_definitions ( void  )
static

Parse definitions for the parameter parser

Here is the caller graph for this function:

◆ persist()

bool Media::SourceParameters::persist ( UserData::JSONData dest) const
virtual

Reimplemented in Filesystem::Parameters, MusicLibrary::LibraryParameters, and Pandora::ConnectionParameters.

Here is the caller graph for this function:

Member Data Documentation

◆ name

std::string Media::SourceParameters::name

◆ owner

User* Media::SourceParameters::owner = nullptr

◆ permissions

Ownership::Type Media::SourceParameters::permissions = Ownership::Type::PRIVATE

◆ persistence

PersistenceMode Media::SourceParameters::persistence = PersistenceMode::Temporary

Persistence state.

◆ song_proxy

ProxyMode Media::SourceParameters::song_proxy = ProxyMode::None

◆ userSpecified

bool Media::SourceParameters::userSpecified = false
private

◆ waitForReady

bool Media::SourceParameters::waitForReady = false

Wait on initialization. Flag never persisted.


The documentation for this class was generated from the following files: