digiKam Developer Documentation
Professional Photo Management with the Power of Open Source
Loading...
Searching...
No Matches
Digikam::AutotagsPipelineObject Class Reference
Inheritance diagram for Digikam::AutotagsPipelineObject:

Public Member Functions

 AutotagsPipelineObject (const AutotagsScanSettings &_settings)
bool start () override
Public Member Functions inherited from Digikam::AutotagsPipelineBase
 AutotagsPipelineBase (const AutotagsScanSettings &_settings)
virtual void bqmSendOne (std::unique_ptr< DMetadata > &_bqmMeta, const ItemInfo &info, const QUrl &outputUrl, const DImg &image)
virtual void notify (MLPipelineNotification notification, const QString &_name, const QString &_path, const QString &_displayData, int _processed, const DImg &_thumbnail) override
virtual void notify (MLPipelineNotification notification, const QString &_name, const QString &_path, const QString &_displayData, int _processed, const QIcon &_thumbnail) override
virtual void notify (MLPipelineNotification notification, const QString &_name, const QString &_path, const QString &_displayData, int _processed, const QImage &_thumbnail) override
Public Member Functions inherited from Digikam::MLPipelineFoundation
virtual void cancel ()
bool hasFinished () const

Protected Member Functions

void addMoreWorkers () override
bool classifier () override
bool extractor () override
bool finder () override
bool loader () override
bool trainer () override
bool writer () override
Protected Member Functions inherited from Digikam::AutotagsPipelineBase
bool enqueue (MLPipelineQueue *thisQueue, MLPipelinePackageFoundation *package) override
Protected Member Functions inherited from Digikam::MLPipelineFoundation
bool addWorker (const MLPipelineStage &stage)
bool checkMoreWorkers (int totalItemCount, int currentItemCount, bool useFullCpu)
void clearAllQueues ()
virtual MLPipelinePackageFoundation * dequeue (MLPipelineQueue *thisQueue)
void emitSignalUpdateItemCount (const qlonglong itemCount)
 Helper methods to perform signal emitting through the MLPIPELINE_FINDER_END mocro with the moc processor.
void pipelinePerformanceEnd (const MLPipelineStage &stage, int totalItemCount, QElapsedTimer &timer)
void pipelinePerformanceEnd (const MLPipelineStage &stage, QElapsedTimer &timer)
void pipelinePerformanceStart (const MLPipelineStage &stage, QElapsedTimer &timer)
 Methods to profile the Pipeline performance.
MLPipelinePackageFoundation * queueEndSignal () const
 Queue helper functions.
void showPipelinePerformance () const
void stageEnd (MLPipelineStage thisStage, MLPipelineStage nextStage)
void stageStart (QThread::Priority threadPriority, MLPipelineStage thisStage, MLPipelineStage nextStage, MLPipelineQueue *&thisQueue, MLPipelineQueue *&nextQueue)
void waitForStart ()

Additional Inherited Members

Public Types inherited from Digikam::MLPipelineFoundation
enum  MLPipelineNotification { notifySkipped , notifyProcessed }
typedef struct Digikam::MLPipelineFoundation::_MLPipelinePerformanceProfile MLPipelinePerformanceProfile
typedef SharedQueue< MLPipelinePackageFoundation * > MLPipelineQueue
enum  MLPipelineStage {
  Finder , Loader , Extractor , Classifier ,
  Trainer , Writer , None
}
Signals inherited from Digikam::MLPipelineFoundation
void finished ()
 Emitted when the last package has finished processing.
void processed (const MLPipelinePackageNotify::Ptr &package)
 Emitted when one package has finished processing.
void processing (const MLPipelinePackageNotify::Ptr &package)
 Emitted when one package begins processing.
void progressValueChanged (float progress)
void scheduled ()
 Emitted when processing is scheduled.
void signalAddMoreWorkers ()
void signalUpdateItemCount (const qlonglong itemCount)
void skipped (const MLPipelinePackageNotify::Ptr &package)
 Emitted when one or several packages were skipped, usually because they have already been scanned.
void started (const QString &message)
 Emitted when processing has started.
Protected Attributes inherited from Digikam::AutotagsPipelineBase
const QList< AlbumRootInfo > albumRoots
AutotagsClassifierBase * autotagsClassifier = nullptr
std::unique_ptr< DMetadata > bqmMeta
QUrl bqmOutputUrl
QSemaphore bqmSemaphore
DNNModelNet * model = nullptr
AutotagsScanSettings settings
Protected Attributes inherited from Digikam::MLPipelineFoundation
bool cancelled = false
QAtomicInteger< int > itemsProcessed = 0
quint64 maxBufferSize = 2147483648
 2 GB default
QIcon missingIcon = QIcon::fromTheme(QLatin1String("image-missing"))
QMutex mutex
QMap< MLPipelineStage, MLPipelinePerformanceProfile > performanceProfileList
QElapsedTimer pipelineTimer
QMap< MLPipelineStage, MLPipelineQueue * > queues
QThreadPool * threadPool = nullptr
QMutex threadStageMutex
const int throttledQueueDepth = 1
QAtomicInteger< int > totalItemCount = 0
quint64 usedBufferSize = 0
QList< QFutureWatcher< bool > * > watchList

Member Function Documentation

◆ addMoreWorkers()

void Digikam::AutotagsPipelineObject::addMoreWorkers ( )
overrideprotectedvirtual

◆ classifier()

bool Digikam::AutotagsPipelineObject::classifier ( )
overrideprotectedvirtual

◆ extractor()

bool Digikam::AutotagsPipelineObject::extractor ( )
overrideprotectedvirtual

◆ finder()

bool Digikam::AutotagsPipelineObject::finder ( )
overrideprotectedvirtual

◆ loader()

bool Digikam::AutotagsPipelineObject::loader ( )
overrideprotectedvirtual

◆ start()

bool Digikam::AutotagsPipelineObject::start ( )
overridevirtual

Reimplemented from Digikam::AutotagsPipelineBase.

◆ trainer()

bool Digikam::AutotagsPipelineObject::trainer ( )
inlineoverrideprotectedvirtual

◆ writer()

bool Digikam::AutotagsPipelineObject::writer ( )
overrideprotectedvirtual