11 #include "settings/LibExportSettings.h"    12 #include "threads/CriticalSection.h"    13 #include "utils/JobManager.h"    50   void ImportLibrary(
const std::string& xmlFile, 
bool showDialog = 
false);
    58   void ScanLibrary(
const std::string& strDirectory, 
int flags = 0, 
bool showProgress = 
true);
    65   void StartAlbumScan(
const std::string& strDirectory, 
bool refresh = 
false);
    72   void StartArtistScan(
const std::string& strDirectory, 
bool refresh = 
false);
   127   typedef std::set<CMusicLibraryJob*> MusicLibraryJobs;
   128   typedef std::map<std::string, MusicLibraryJobs> MusicLibraryJobMap;
   129   MusicLibraryJobMap m_jobs;
   130   CCriticalSection m_critical;
   132   bool m_modal = 
false;
   133   bool m_cleaning = 
false;
 void AddJob(CMusicLibraryJob *job)
Adds the given job to the queue. 
Definition: MusicLibraryQueue.cpp:216
void StopLibraryScanning()
Stop and dequeue all scanning jobs. 
Definition: MusicLibraryQueue.cpp:176
Base class for jobs that are executed asynchronously. 
Definition: Job.h:109
void ImportLibrary(const std::string &xmlFile, bool showDialog=false)
Enqueue a music library import job. 
Definition: MusicLibraryQueue.cpp:84
Basic implementation/interface of a CJob which interacts with the music database. ...
Definition: MusicLibraryJob.h:19
Queue for music library jobs. 
Definition: MusicLibraryQueue.h:28
void StartAlbumScan(const std::string &strDirectory, bool refresh=false)
Enqueue an album scraping job fetching additional album data. 
Definition: MusicLibraryQueue.cpp:141
void CancelJob(CMusicLibraryJob *job)
Cancels the given job and removes it from the queue. 
Definition: MusicLibraryQueue.cpp:238
void ScanLibrary(const std::string &strDirectory, int flags=0, bool showProgress=true)
Enqueue a music library update job, scanning tags embedded in music files and optionally scraping add...
Definition: MusicLibraryQueue.cpp:123
void CleanLibrary(bool showDialog=false)
Enqueue an asynchronous library cleaning job. 
Definition: MusicLibraryQueue.cpp:192
Definition: LibExportSettings.h:38
void OnJobComplete(unsigned int jobID, bool success, CJob *job) override
The callback used when a job completes. 
Definition: MusicLibraryQueue.cpp:284
void Refresh()
Notifies all to refresh the current listings. 
Definition: MusicLibraryQueue.cpp:277
Definition: settings.py:1
Definition: GUIDialogExtendedProgressBar.h:16
Definition: GUIDialogProgress.h:16
bool IsRunning() const
Whether any jobs are running or not. 
Definition: MusicLibraryQueue.cpp:272
void CancelAllJobs()
Cancels all running and queued jobs. 
Definition: MusicLibraryQueue.cpp:263
bool IsScanningLibrary() const
Check if a library scan or cleaning is in progress. 
Definition: MusicLibraryQueue.cpp:157
static CMusicLibraryQueue & GetInstance()
Gets the singleton instance of the music library queue. 
Definition: MusicLibraryQueue.cpp:41
void StartArtistScan(const std::string &strDirectory, bool refresh=false)
Enqueue an artist scraping job fetching additional artist data. 
Definition: MusicLibraryQueue.cpp:149
void ExportLibrary(const CLibExportSettings &settings, bool showDialog=false)
Enqueue a music library export job. 
Definition: MusicLibraryQueue.cpp:47
Job Queue class to handle a queue of unique jobs to be processed sequentially. 
Definition: JobManager.h:63