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

Basic implementation/interface of a CJob which interacts with the music database. More...

#include <MusicLibraryJob.h>

Inheritance diagram for CMusicLibraryJob:
CJob CMusicLibraryProgressJob CMusicLibraryScanningJob CMusicLibraryCleaningJob CMusicLibraryExportJob CMusicLibraryImportJob

Public Member Functions

 ~CMusicLibraryJob () override
 
virtual bool CanBeCancelled () const
 Whether the job can be cancelled or not.
 
virtual bool Cancel ()
 Tries to cancel the running job.
 
bool DoWork () override
 Main workhorse function of CJob instances.
 
const char * GetType () const override
 Function that returns the type of job.
 
bool operator== (const CJob *job) const override
 
- Public Member Functions inherited from CJob
 CJob ()
 
virtual ~CJob ()=default
 Destructor for job objects.
 
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

 CMusicLibraryJob ()
 
virtual bool Work (CMusicDatabase &db)=0
 Worker method to be implemented by an actual implementation.
 

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

Basic implementation/interface of a CJob which interacts with the music database.

Constructor & Destructor Documentation

◆ ~CMusicLibraryJob()

CMusicLibraryJob::~CMusicLibraryJob ( )
overridedefault

◆ CMusicLibraryJob()

CMusicLibraryJob::CMusicLibraryJob ( )
protecteddefault

Member Function Documentation

◆ CanBeCancelled()

virtual bool CMusicLibraryJob::CanBeCancelled ( ) const
inlinevirtual

Whether the job can be cancelled or not.

Reimplemented in CMusicLibraryScanningJob.

◆ Cancel()

virtual bool CMusicLibraryJob::Cancel ( )
inlinevirtual

Tries to cancel the running job.

Returns
True if the job was cancelled, false otherwise

Reimplemented in CMusicLibraryScanningJob.

◆ DoWork()

bool CMusicLibraryJob::DoWork ( )
overridevirtual

Main workhorse function of CJob instances.

All CJob subclasses must implement this function, performing all processing. Once this function is complete, the OnJobComplete() callback is called, and the job is then destroyed.

See also
CJobManager, IJobCallback::OnJobComplete()

Implements CJob.

Reimplemented in CMusicLibraryProgressJob.

◆ GetType()

const char * CMusicLibraryJob::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::AddLIFOJob() routine, which preempts similar jobs with the new job.

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

Reimplemented from CJob.

Reimplemented in CMusicLibraryProgressJob, and CMusicLibraryScanningJob.

◆ operator==()

bool CMusicLibraryJob::operator== ( const CJob * job) const
inlineoverridevirtual

Reimplemented from CJob.

Reimplemented in CMusicLibraryProgressJob, and CMusicLibraryScanningJob.

◆ Work()

virtual bool CMusicLibraryJob::Work ( CMusicDatabase & db)
protectedpure virtual

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

Implemented in CMusicLibraryCleaningJob, CMusicLibraryExportJob, CMusicLibraryImportJob, and CMusicLibraryScanningJob.


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