37 virtual const std::string &
artist (
void)
const override {
return _artist; };
78 virtual const std::string &
artist (
void)
const override {
return _artist; };
137 virtual const std::string &
songId (
void)
const override {
return _songId; };
140 virtual const std::string &
artist (
void)
const override {
return _artist; };
146 virtual const std::string &
title (
void)
const override {
return _title; };
147 virtual const std::string &
genre (
void)
const override {
return _genre; };
150 virtual int year (
void)
const override {
return _year; };
219 virtual const std::string &
genre (
void)
const override {
return _genre; };
244 virtual void rename (
const std::string &newname)
override;
245 virtual void erase ()
override;
Exception for command execution problems.
Definition: fundamentals.h:293
A PianodAlbum that is self-contained, unrelated to artists, songs, or playlists Encapsulated albums m...
Definition: encapmusic.h:59
virtual Type type(void) const override
Return the type letter for a thingie.
Definition: encapmusic.h:74
void albumId(const std::string &a)
Definition: encapmusic.h:89
void artist(const char *a)
Definition: encapmusic.h:87
virtual const std::string & albumTitle(void) const override
Definition: encapmusic.h:81
virtual const std::string & coverArtUrl(void) const override
Definition: encapmusic.h:82
void albumId(const char *a)
Definition: encapmusic.h:90
void artist(const std::string &a)
Definition: encapmusic.h:86
std::string _albumTitle
Definition: encapmusic.h:67
virtual const std::string & artistId(void) const override
Item's artist ID.
Definition: encapmusic.h:77
void artistId(const char *a)
Definition: encapmusic.h:85
void albumTitle(const std::string &t)
Definition: encapmusic.h:91
std::string _albumId
Definition: encapmusic.h:66
void coverArtUrl(const char *u)
Definition: encapmusic.h:94
virtual const std::string & albumId(void) const override
Item's album ID.
Definition: encapmusic.h:80
void coverArtUrl(const std::string &u)
Definition: encapmusic.h:93
std::string _coverArt
Definition: encapmusic.h:68
virtual Media::Source *const source(void) const override
MediaSource from which this thingie originates.
Definition: encapmusic.h:75
virtual const std::string & artist(void) const override
Get artist name.
Definition: encapmusic.h:78
void artistId(const std::string &a)
Definition: encapmusic.h:84
Media::Source *const _source
Definition: encapmusic.h:61
std::string _artistId
Definition: encapmusic.h:63
EncapsulatedAlbum(Media::Source *const owner, Type item_type=Type::Album)
Definition: encapmusic.h:70
std::string _artist
Definition: encapmusic.h:64
void albumTitle(const char *t)
Definition: encapmusic.h:92
const Type _type
Definition: encapmusic.h:62
A PianodArtist that is fully-contained in itself, unrelated to albums, songs, or playlists.
Definition: encapmusic.h:22
void artist(const char *a)
Definition: encapmusic.h:42
void artist(const std::string &a)
Definition: encapmusic.h:41
std::string _artistId
Definition: encapmusic.h:26
virtual Media::Source *const source(void) const override
MediaSource from which this thingie originates.
Definition: encapmusic.h:34
virtual const std::string & artistId(void) const override
Item's artist ID.
Definition: encapmusic.h:36
void artistId(const char *a)
Definition: encapmusic.h:40
void artistId(const std::string &a)
Definition: encapmusic.h:39
virtual Type type(void) const override
Return the type letter for a thingie.
Definition: encapmusic.h:33
EncapsulatedArtist(Media::Source *const owner, Type type=Type::Artist)
Definition: encapmusic.h:29
virtual const std::string & artist(void) const override
Get artist name.
Definition: encapmusic.h:37
Media::Source *const _source
Definition: encapmusic.h:24
const Type _type
Definition: encapmusic.h:25
std::string _artist
Definition: encapmusic.h:27
A PianodPlaylist that is self-contained.
Definition: encapmusic.h:201
Media::Source *const _source
Definition: encapmusic.h:203
void playlistType(PlaylistType p)
Definition: encapmusic.h:222
const Type _type
Definition: encapmusic.h:204
virtual const std::string & playlistId(void) const override
Item's playlist ID.
Definition: encapmusic.h:217
void playlistName(const std::string &n)
Definition: encapmusic.h:225
void genre(const std::string &g)
Definition: encapmusic.h:227
std::string _genre
Definition: encapmusic.h:208
void playlistName(const char *&n)
Definition: encapmusic.h:226
virtual Type type(void) const override
Return the type letter for a thingie.
Definition: encapmusic.h:213
virtual PlaylistType playlistType(void) const override
Mix, everything, transient or single list.
Definition: encapmusic.h:216
virtual const std::string & genre(void) const override
Get genre of this playlist.
Definition: encapmusic.h:219
virtual const std::string & playlistName(void) const override
Name of the playlist.
Definition: encapmusic.h:218
void playlistId(const std::string &p)
Definition: encapmusic.h:223
virtual Media::Source *const source(void) const override
MediaSource from which this thingie originates.
Definition: encapmusic.h:214
std::string _playlistId
Definition: encapmusic.h:206
void genre(const char *&g)
Definition: encapmusic.h:228
std::string _playlistName
Definition: encapmusic.h:207
PlaylistType _playlistType
Definition: encapmusic.h:205
void playlistId(const char *p)
Definition: encapmusic.h:224
EncapsulatedPlaylist(Media::Source *const owner, Type type=Type::Playlist)
Definition: encapmusic.h:210
A PianodSong that is self-contained, unrelated to albums or artists.
Definition: encapmusic.h:110
void coverArtUrl(const std::string &u)
Definition: encapmusic.h:166
virtual RESPONSE_CODE rate(Rating, User *) override
Rate a song.
Definition: encapmusic.h:181
void duration(int d)
Definition: encapmusic.h:177
virtual const std::string & coverArtUrl(void) const override
Definition: encapmusic.h:144
virtual const std::string & artist(void) const override
Get artist name.
Definition: encapmusic.h:140
Retainer< PianodPlaylist * > _playlist
Definition: encapmusic.h:128
void coverArtUrl(const char *u)
Definition: encapmusic.h:167
void albumId(const std::string &a)
Definition: encapmusic.h:162
virtual Rating rating(const User *) const override
Get a song's rating.
Definition: encapmusic.h:184
std::string _title
Definition: encapmusic.h:122
void year(int y)
Definition: encapmusic.h:178
int _year
Definition: encapmusic.h:126
std::string _songId
Definition: encapmusic.h:121
virtual const std::string & genre(void) const override
Get genre of this song.
Definition: encapmusic.h:147
virtual int duration(void) const override
Duration of song in seconds.
Definition: encapmusic.h:149
void genre(const char *g)
Definition: encapmusic.h:174
void artistId(const char *a)
Definition: encapmusic.h:158
virtual const std::string & artistId(void) const override
Item's artist ID.
Definition: encapmusic.h:139
void trackNumber(int n)
Definition: encapmusic.h:179
virtual int trackNumber(void) const override
Get track number (sequence number within an album/original media).
Definition: encapmusic.h:152
std::string _artistId
Definition: encapmusic.h:114
std::string _genre
Definition: encapmusic.h:123
virtual const std::string & infoUrl(void) const override
Provide a URL with additional info.
Definition: encapmusic.h:148
void albumTitle(const char *t)
Definition: encapmusic.h:165
void albumId(const char *a)
Definition: encapmusic.h:163
void artistId(const std::string &a)
Definition: encapmusic.h:157
EncapsulatedSong(Media::Source *const owner, Type type=Type::Song)
Definition: encapmusic.h:131
void title(const char *t)
Definition: encapmusic.h:172
void genre(const std::string &g)
Definition: encapmusic.h:173
std::string _coverArt
Definition: encapmusic.h:119
std::string _albumTitle
Definition: encapmusic.h:118
int _trackNumber
Definition: encapmusic.h:127
virtual time_t lastPlayed(void) const
Definition: encapmusic.h:151
virtual const std::string & albumTitle(void) const override
Definition: encapmusic.h:143
void title(const std::string &t)
Definition: encapmusic.h:171
void songId(const char *i)
Definition: encapmusic.h:170
virtual const std::string & title(void) const override
Get the song's title.
Definition: encapmusic.h:146
virtual Type type(void) const override
Return the type letter for a thingie.
Definition: encapmusic.h:134
virtual int year(void) const override
Year of release of song.
Definition: encapmusic.h:150
std::string _infoUrl
Definition: encapmusic.h:124
void artist(const std::string &a)
Definition: encapmusic.h:159
void infoUrl(const char *i)
Definition: encapmusic.h:176
virtual PianodPlaylist * playlist(void) const override
Get a playlist instance.
Definition: encapmusic.h:153
std::string _artist
Definition: encapmusic.h:115
virtual const std::string & songId(void) const override
Definition: encapmusic.h:137
virtual const std::string & albumId(void) const override
Item's album ID.
Definition: encapmusic.h:142
int _duration
Definition: encapmusic.h:125
void artist(const char *a)
Definition: encapmusic.h:160
void infoUrl(const std::string &i)
Definition: encapmusic.h:175
const Type _type
Definition: encapmusic.h:113
void songId(const std::string &i)
Definition: encapmusic.h:169
std::string _albumId
Definition: encapmusic.h:117
Media::Source *const _source
Definition: encapmusic.h:112
void albumTitle(const std::string &t)
Definition: encapmusic.h:164
virtual Media::Source *const source(void) const override
MediaSource from which this thingie originates.
Definition: encapmusic.h:135
Type
Access levels for an object.
Definition: fundamentals.h:355
Generic data type.
Definition: parsnip.h:81
A PianodAlbum that is self-contained, unrelated to artists, songs, or playlists Encapsulated albums m...
Definition: encapmusic.h:99
virtual Parsnip::Data persist() const
Assemble the song details for serialization.
Definition: encapmusic.cpp:59
PersistentAlbum(Media::Source *const owner, Type type, const Parsnip::Data &data)
Reconstruct a song from our persistence format.
Definition: encapmusic.cpp:49
A PianodArtist that is fully-contained in itself, unrelated to albums, songs, or playlists.
Definition: encapmusic.h:47
PersistentArtist(Media::Source *const owner, Type type, const Parsnip::Data &data)
Reconstruct a song from our persistence format.
Definition: encapmusic.cpp:28
virtual Parsnip::Data persist() const
Assemble the song details for serialization.
Definition: encapmusic.cpp:35
Definition: encapmusic.h:231
virtual Parsnip::Data persist() const
Assemble the song details for serialization.
Definition: encapmusic.cpp:146
PersistentPlaylist(Media::Source *const owner, Type type, const Parsnip::Data &data)
Reconstruct a song from our persistence format.
Definition: encapmusic.cpp:140
A PianodSong that is self-contained, unrelated to albums or artists.
Definition: encapmusic.h:191
PersistentSong(Media::Source *const owner, Type type, const Parsnip::Data &data)
Reconstruct a song from our persistence format.
Definition: encapmusic.cpp:76
virtual Parsnip::Data persist() const
Assemble the song details for serialization.
Definition: encapmusic.cpp:92
Base class for albums, these are also MusicThingies and artists.
Definition: musictypes.h:307
Base class for artists, derived from MusicThingies.
Definition: musictypes.h:272
Base class for playlists, but still a MusicThingie.
Definition: musictypes.h:416
PlaylistType
Definition: musictypes.h:418
@ SINGLE
Definition: musictypes.h:419
Base class for songs, these are also MusicThingies, artists and albums.
Definition: musictypes.h:339
Media::Player * play(const AudioSettings &audio)
Play the song.
Definition: musictypes.cpp:646
value_type * get() const
Get the pointer itself.
Definition: retainer.h:128
Data about each user.
Definition: user.h:53
enum server_status_t RESPONSE_CODE
@ E_INVALID
Definition: fundamentals.h:192
Playlist / Artist / Album / Song data types.
const char * Song
Definition: musickeys.cpp:69
const char * Playlist
Definition: musickeys.cpp:66
const char * Album
Definition: musickeys.cpp:68
const char * Artist
Definition: musickeys.cpp:67
Rating
Discrete ratings values.
Definition: ratings.h:24
@ UNRATED
Unrated/no rating found, 0 enum.
Smart pointers for music thingie types.