Sayonara Player
Signals | Public Member Functions | Public Slots | Protected Member Functions | Protected Attributes | List of all members
AbstractLibrary Class Referenceabstract

Signals

void sig_track_mime_data_available ()
 
void sig_all_tracks_loaded ()
 
void sig_all_albums_loaded ()
 
void sig_all_artists_loaded ()
 
void sig_reloading_library (const QString &message, int progress)
 
void sig_reloading_library_finished ()
 
void sig_delete_answer (QString)
 
void sig_import_dialog_requested ()
 

Public Member Functions

 AbstractLibrary (QObject *parent=nullptr)
 
Library::Sortings sortorder () const
 
Library::Filter filter () const
 
void change_filter (Library::Filter, bool force=false)
 
const MetaDataListtracks () const
 
const AlbumListalbums () const
 
const ArtistListartists () const
 
const MetaDataListcurrent_tracks () const
 
const SP::Set< TrackID > & selected_tracks () const
 
const SP::Set< AlbumId > & selected_albums () const
 
const SP::Set< ArtistId > & selected_artists () const
 
bool is_loaded () const
 

Public Slots

virtual void load ()
 
virtual void reload_library (bool clear_first, Library::ReloadQuality quality)=0
 
virtual void refetch ()
 
virtual void refresh ()
 
virtual void selected_artists_changed (const IndexSet &indexes)
 
virtual void selected_albums_changed (const IndexSet &indexes, bool ignore_artists=false)
 
virtual void selected_tracks_changed (const IndexSet &indexes)
 
virtual void prepare_current_tracks_for_playlist (bool new_playlist)
 
virtual void prepare_fetched_tracks_for_playlist (bool new_playlist)
 
void prepare_tracks_for_playlist (const QStringList &file_paths, bool new_playlist)
 
virtual void play_next_fetched_tracks ()
 
virtual void play_next_current_tracks ()
 
virtual void append_fetched_tracks ()
 
virtual void append_current_tracks ()
 
virtual void metadata_id3_changed (const MetaDataList &, const MetaDataList &)
 
virtual void fetch_by_filter (Library::Filter filter, bool force)
 
virtual void fetch_tracks_by_paths (const QStringList &paths)
 
virtual void delete_tracks (const MetaDataList &v_md, Library::TrackDeletionMode mode)=0
 
virtual void delete_tracks_by_idx (const IndexSet &indexes, Library::TrackDeletionMode mode)
 
virtual void delete_fetched_tracks (Library::TrackDeletionMode mode)
 
virtual void delete_current_tracks (Library::TrackDeletionMode mode)
 
virtual void delete_all_tracks ()
 
virtual void insert_tracks (const MetaDataList &v_md)
 
virtual void import_files (const QStringList &files)
 
virtual void change_track_rating (int idx, Rating rating)
 
virtual void change_album_rating (int idx, Rating rating)
 
virtual void change_track_sortorder (Library::SortOrder s)
 
virtual void change_album_sortorder (Library::SortOrder s)
 
virtual void change_artist_sortorder (Library::SortOrder s)
 
virtual void add_genre (const IdSet ids, const Genre &genre)
 
virtual void delete_genre (const Genre &genre)
 
virtual void rename_genre (const Genre &genre, const Genre &new_genre)
 
virtual void merge_artists (const IdSet &source_ids, ArtistId target_id)
 
virtual void merge_albums (const IdSet &source_ids, AlbumId target_id)
 
virtual void refresh_artist ()=0
 
virtual void refresh_albums ()=0
 
virtual void refresh_tracks ()=0
 

Protected Member Functions

virtual void emit_stuff ()
 
virtual void get_all_artists (ArtistList &artists)=0
 
virtual void get_all_artists_by_searchstring (Library::Filter filter, ArtistList &artists)=0
 
virtual void get_all_albums (AlbumList &albums)=0
 
virtual void get_all_albums_by_artist (IdList artist_ids, AlbumList &albums, Library::Filter filter)=0
 
virtual void get_all_albums_by_searchstring (Library::Filter filter, AlbumList &albums)=0
 
virtual void get_all_tracks (MetaDataList &v_md)=0
 
virtual void get_all_tracks (const QStringList &paths, MetaDataList &v_md)=0
 
virtual void get_all_tracks_by_artist (IdList artist_ids, MetaDataList &v_md, Library::Filter filter)=0
 
virtual void get_all_tracks_by_album (IdList album_ids, MetaDataList &v_md, Library::Filter filter)=0
 
virtual void get_all_tracks_by_searchstring (Library::Filter filter, MetaDataList &v_md)=0
 
virtual void get_album_by_id (AlbumId album_id, Album &album)=0
 
virtual void get_artist_by_id (ArtistId artist_id, Artist &artist)=0
 
virtual void update_track (const MetaData &md)=0
 
virtual void update_tracks (const MetaDataList &v_md)
 
virtual void update_album (const Album &album)=0
 
Tagging::Editortag_edit ()
 

Protected Attributes

MetaDataList _tracks
 
AlbumList _albums
 
ArtistList _artists
 
Settings_settings =nullptr
 
Inheritance diagram for AbstractLibrary:
SayonaraClass LocalLibrary SC::Library