Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CMusicLibraryScanningJob Class Reference

Music library job implementation for scanning items. Uses CMusicInfoScanner for scanning and can be run with or without a visible progress bar. More...

#include <MusicLibraryScanningJob.h>

Inheritance diagram for CMusicLibraryScanningJob:
CMusicLibraryJob CJob

Public Member Functions

 CMusicLibraryScanningJob (const std::string &directory, int flags, bool showProgress=true)
 Creates a new music library tag scanning and data scraping job.
 
 ~CMusicLibraryScanningJob () override
 
bool CanBeCancelled () const override
 Whether the job can be cancelled or not.
 
bool Cancel () override
 Tries to cancel the running job.
 
const char * GetType () const override
 Function that returns the type of job.
 
bool Equals (const CJob *job) const override
 Function that compares this job instance with the given job instance.
 
- Public Member Functions inherited from CMusicLibraryJob
 ~CMusicLibraryJob () override
 
bool DoWork () override
 Main workhorse function of CJob instances.
 
- Public Member Functions inherited from CJob
 CJob ()=default
 
virtual ~CJob ()=default
 Destructor for job objects.
 
void SetProgressCallback (CJobManager *callback)
 Function to set a callback for jobs to report progress.
 
virtual bool ShouldCancel (unsigned int progress, unsigned int total) const
 Function for longer jobs to report progress and check whether they have been cancelled.
 

Protected Member Functions

bool Work (CMusicDatabase &db) override
 Worker method to be implemented by an actual implementation.
 
- Protected Member Functions inherited from CMusicLibraryJob
 CMusicLibraryJob ()
 

Additional Inherited Members

- Public Types inherited from CJob
enum  PRIORITY {
  PRIORITY_LOW_PAUSABLE = 0 , PRIORITY_LOW , PRIORITY_NORMAL , PRIORITY_HIGH ,
  PRIORITY_DEDICATED
}
 Priority levels for jobs, specified by clients when adding jobs to the CJobManager. More...
 

Detailed Description

Music library job implementation for scanning items. Uses CMusicInfoScanner for scanning and can be run with or without a visible progress bar.

Constructor & Destructor Documentation

◆ CMusicLibraryScanningJob()

CMusicLibraryScanningJob::CMusicLibraryScanningJob ( const std::string & directory,
int flags,
bool showProgress = true )

Creates a new music library tag scanning and data scraping job.

Parameters
[in]directoryDirectory to be scanned for new items
[in]flagsWhat kind of scan to do
[in]showProgressWhether to show a progress bar or not

◆ ~CMusicLibraryScanningJob()

CMusicLibraryScanningJob::~CMusicLibraryScanningJob ( )
overridedefault

Member Function Documentation

◆ CanBeCancelled()

bool CMusicLibraryScanningJob::CanBeCancelled ( ) const
inlineoverridevirtual

Whether the job can be cancelled or not.

Reimplemented from CMusicLibraryJob.

◆ Cancel()

bool CMusicLibraryScanningJob::Cancel ( )
overridevirtual

Tries to cancel the running job.

Returns
True if the job was cancelled, false otherwise

Reimplemented from CMusicLibraryJob.

◆ Equals()

bool CMusicLibraryScanningJob::Equals ( const CJob * job) const
overridevirtual

Function that compares this job instance with the given job instance.

CJob subclasses may optionally implement this to provide customized comparison functionality. This is useful for the CJobManager::AddJob() routine, which preempts similar jobs with the new job.

Parameters
jobthe job to compared with this CJob instance.
Returns
if true, the two jobs are equal.
See also
CJobManager::AddJob()

Reimplemented from CJob.

◆ GetType()

const char * CMusicLibraryScanningJob::GetType ( ) const
inlineoverridevirtual

Function that returns the type of job.

CJob subclasses may optionally implement this function to specify the type of job. This is useful for the CJobManager::AddJob() routine, which preempts similar jobs with the new job.

Returns
a unique character string describing the job.
See also
CJobManager

Reimplemented from CMusicLibraryJob.

◆ Work()

bool CMusicLibraryScanningJob::Work ( CMusicDatabase & db)
overrideprotectedvirtual

Worker method to be implemented by an actual implementation.

Parameters
[in]dbAlready open music database to be used for interaction
Returns
True if the process succeeded, false otherwise

Implements CMusicLibraryJob.


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