|
pianod2
multisource multiuser scriptable networked music player
|
A PianodArtist that contains a vector of albums. More...
#include <musiclibrary.h>


Public Member Functions | |
| Artist (Foundation *const library, const std::string &id, const std::string &name) | |
| Create a new artist. More... | |
| virtual | ~Artist (void) override |
| Foundation *const | parent (void) const |
| Foundation *const | library (void) const |
| virtual Media::Source *const | source (void) const override final |
| MediaSource from which this thingie originates. More... | |
| virtual const std::string & | artistId (void) const override final |
| Item's artist ID. More... | |
| virtual const std::string & | artist (void) const override final |
| Get artist name. More... | |
| virtual SongList | songs () override |
| Get all songs belonging to all albums by this artist. More... | |
| virtual bool | canQueue () const override |
| Indicate if specific item can be queued/requested. More... | |
| virtual Parsnip::Data | persist () const |
| virtual void | restore (const Parsnip::Data &data) |
| bool | empty () const |
| const std::vector< Album * > & | getAlbums () |
Public Member Functions inherited from PianodArtist | |
| virtual const std::string | id (void) const override |
| Get primary ID with media manager ID on it. More... | |
| virtual const std::string | id (MusicThingie::Type type) const override |
| Return the complete ID when used in a specific context. More... | |
| virtual const std::string & | internalId (MusicThingie::Type type) const override |
| Return the inner ID when used in a specific context. More... | |
| virtual const std::string & | name (void) const override |
| Return the most specific name of this, whatever type it is. More... | |
| virtual Type | type (void) const override |
| Return the type letter for a thingie. More... | |
| virtual Football::Thingie & | transmitCommon (Football::Thingie &recipient) const override |
| Typecode for artist type. More... | |
| virtual PianodConnection & | transmitPrivate (PianodConnection &recipient) const override |
| Transmit the thingie's user-specific data on a connection. More... | |
| virtual Parsnip::Data | serialize () const override |
| Assemble the thingie's data for JSON tranmission. More... | |
| virtual void | serializePrivate (Parsnip::Data &, const User *user) const override |
| Add the thingie's user-specific data for JSON transmission. More... | |
| virtual bool | matches (const Filter &filter) const override |
| Check if a filter matches this item. More... | |
| virtual PianodArtist * | asArtist () override |
| virtual const PianodArtist * | asArtist () const override |
| virtual bool | operator== (const std::string &compare) const override |
| See if the artist has a certain name. More... | |
| virtual bool | operator== (const MusicThingie &compare) const override |
| Compare artist's name to that of an artist/album/song. More... | |
Public Member Functions inherited from MusicThingie | |
| MusicThingie (void) | |
| When allocated, use count starts at 1 and the object is put in the release pool, justifying its existence. More... | |
| bool | isPrimary (void) const |
| bool | isSuggestion (void) const |
| bool | isSeed (void) const |
| bool | isPlaylist (void) const |
| bool | isSong (void) const |
| bool | isAlbum (void) const |
| bool | isArtist (void) const |
| bool | isValidType (void) const |
| Type | primaryType (void) const |
| virtual PianodAlbum * | asAlbum () |
| virtual PianodSong * | asSong () |
| virtual PianodPlaylist * | asPlaylist () |
| virtual const PianodAlbum * | asAlbum () const |
| virtual const PianodSong * | asSong () const |
| virtual const PianodPlaylist * | asPlaylist () const |
| std::string | operator() (void) const |
| void | retain (void) const |
| Claim an instance. More... | |
| void | release (void) |
| Abandon an instance. More... | |
| int | getUseCount (void) const |
| virtual Ownership * | parentOwner (void) const |
| Defer the ownership to the source. More... | |
| void | serializeCommon (Parsnip::Data &) const |
| Insert common items into the serialization dictionary. More... | |
| bool | operator!= (const std::string &compare) |
| bool | operator!= (const MusicThingie &compare) |
Public Member Functions inherited from SubordinateOwnership | |
| virtual bool | isOwnedBy (const User *user) const override |
| virtual bool | hasPermission (const User *user, Action action) const override |
Public Member Functions inherited from Ownership | |
| bool | isVisibleBy (const User *user) const |
| bool | isUsableBy (const User *user) const |
| bool | isDecendableBy (const User *user) const |
| bool | isReadableBy (const User *user) const |
| bool | isEditableBy (const User *user) const |
Private Attributes | |
| Foundation *const | _library |
| const std::string | _id |
| const std::string | _name |
| std::vector< Album * > | albums |
Friends | |
| class | Album |
| class | Song |
| class | Playlist |
Additional Inherited Members | |
Public Types inherited from MusicThingie | |
| enum class | Type : char { Playlist = 'p' , Artist = 'a' , Album = 'l' , Song = 's' , PlaylistSuggestion = 'e' , ArtistSuggestion = 't' , AlbumSuggestion = 'b' , SongSuggestion = 'n' , PlaylistSeed = 'y' , ArtistSeed = 'd' , AlbumSeed = 'u' , SongSeed = 'g' , SongRating = 'i' } |
Public Types inherited from Ownership | |
| enum class | Type { DISOWNED , PRIVATE , SHARED , PUBLISHED , PUBLIC } |
| Access levels for an object. More... | |
| enum class | Action { SEE , USE , READ , ALTER } |
| Access actions for an object. More... | |
Static Public Member Functions inherited from PianodArtist | |
| static Type | typetype (void) |
| Typecode for artist objects. More... | |
Static Public Member Functions inherited from MusicThingie | |
| static std::string | TypeName (Type type) |
| Get the type name of a music thingie. More... | |
| static Type | TypeFromName (const std::string &name) |
| static constexpr bool | isPrimary (Type t) |
| static constexpr bool | isSuggestion (const Type t) |
| static constexpr bool | isSeed (const Type t) |
| static constexpr bool | isPlaylist (const Type t) |
| static constexpr bool | isSong (const Type t) |
| static constexpr bool | isAlbum (const Type t) |
| static constexpr bool | isArtist (const Type t) |
| static constexpr bool | isValidType (const Type t) |
| static Type | primaryType (const Type t) |
Protected Member Functions inherited from MusicThingie | |
| virtual | ~MusicThingie (void) |
A PianodArtist that contains a vector of albums.
| MusicLibrary::Artist::Artist | ( | Foundation *const | library, |
| const std::string & | id, | ||
| const std::string & | name | ||
| ) |
Create a new artist.
| library | The library in which the artist will reside. |
| id | A unique ID for the artist. |
| name | The name of the artist. |
|
overridevirtual |
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
Item's artist ID.
Implements PianodArtist.
|
inlineoverridevirtual |
Indicate if specific item can be queued/requested.
Reimplemented from MusicThingie.
|
inline |

|
inline |
|
inline |

|
inline |
|
virtual |
|
virtual |
|
overridevirtual |
Get all songs belonging to all albums by this artist.
However, since compilation albums don't belong to the artist, this does not return the artist's songs that are on complations.
Reimplemented from MusicThingie.


|
inlinefinaloverridevirtual |
MediaSource from which this thingie originates.
Implements MusicThingie.
|
friend |
|
friend |
|
friend |
|
private |
|
private |
|
private |
|
private |