| digiKam Developer Documentation Professional Photo Management with the Power of Open Source

Loading...
Searching...
No Matches
Public Member Functions | List of all members
Digikam::SharedLoadSaveThread Class Reference
Inheritance diagram for Digikam::SharedLoadSaveThread:

## Public Member Functions
| SharedLoadSaveThread (QObject *const parent=nullptr)
void | loadShared (const LoadingDescription &description, AccessMode mode, LoadingPolicy policy=LoadingPolicyAppend)
Public Member Functions inherited from Digikam::ManagedLoadSaveThread
| ManagedLoadSaveThread (QObject *const parent=nullptr)
virtual void | load (const LoadingDescription &description) override
| Append a task to load the given file to the task list.
void | load (const LoadingDescription &description, LoadingPolicy policy)
LoadingPolicy | loadingPolicy () const
virtual void | save (const DImg &image, const QString &filePath, const QString &format) override
| Append a task to save the image to the task list.
void | setLoadingPolicy (LoadingPolicy policy)
| Set the loading policy.
void | setTerminationPolicy (TerminationPolicy terminationPolicy)
void | stopAllTasks ()
void | stopLoading (const LoadingDescription &desc, LoadingTaskFilter filter=LoadingTaskFilterAll)
| Same than previous method, but Stop and remove tasks filtered by LoadingDescription.
void | stopLoading (const QString &filePath=QString(), LoadingTaskFilter filter=LoadingTaskFilterAll)
| Stop and remove tasks filtered by filePath and policy.
void | stopSaving (const QString &filePath=QString())
| Stop and remove saving tasks filtered by filePath.
TerminationPolicy | terminationPolicy () const
Public Member Functions inherited from Digikam::LoadSaveThread
| LoadSaveThread (QObject *const parent=nullptr)
| ~LoadSaveThread () override
| Destructor: The thread will execute all pending tasks and wait for this upon destruction.
void | imageLoaded (const LoadingDescription &loadingDescription, const DImg &img) override
void | imageSaved (const QString &filePath, bool success) override
void | imageStartedLoading (const LoadingDescription &loadingDescription) override
void | imageStartedSaving (const QString &filePath) override
void | loadingProgress (const LoadingDescription &loadingDescription, float progress) override
void | moreCompleteLoadingAvailable (const LoadingDescription &oldLoadingDescription, const LoadingDescription &newLoadingDescription) override
virtual bool | querySendNotifyEvent () const
void | savingProgress (const QString &filePath, float progress) override
void | setNotificationPolicy (NotificationPolicy notificationPolicy)
virtual void | taskHasFinished ()
void | thumbnailLoaded (const LoadingDescription &loadingDescription, const QImage &img) override
Public Member Functions inherited from Digikam::DynamicThread
| DynamicThread (QObject *const parent=nullptr)
| This class extends QRunnable, so you have to reimplement virtual void run().
| ~DynamicThread () override
| The destructor calls stop() and wait(), but if you, in your destructor, delete any data that is accessed by your run() method, you must call stop() and wait() before yourself.
bool | isFinished () const
bool | isRunning () const
QThread::Priority | priority () const
void | setEmitSignals (bool emitThem)
void | setPriority (QThread::Priority priority)
| Sets the priority for this dynamic thread.
State | state () const

## Additional Inherited Members
Public Types inherited from Digikam::ManagedLoadSaveThread
enum | LoadingMode { LoadingModeNormal , LoadingModeShared }
| used by SharedLoadSaveThread only More...
enum | LoadingPolicy { LoadingPolicyFirstRemovePrevious , LoadingPolicyPrepend , LoadingPolicySimplePrepend , LoadingPolicyAppend , LoadingPolicySimpleAppend , LoadingPolicyPreload }
enum | LoadingTaskFilter { LoadingTaskFilterAll , LoadingTaskFilterPreloading }
enum | TerminationPolicy { TerminationPolicyTerminateLoading , TerminationPolicyTerminatePreloading , TerminationPolicyWait , TerminationPolicyTerminateAll }
Public Types inherited from Digikam::LoadSaveThread
enum | AccessMode { AccessModeRead , AccessModeReadWrite }
| used by SharedLoadSaveThread only More...
enum | NotificationPolicy { NotificationPolicyDirect , NotificationPolicyTimeLimited }
Public Types inherited from Digikam::DynamicThread
enum | State { Inactive , Scheduled , Running , Deactivating }
Public Slots inherited from Digikam::DynamicThread
void | start ()
void | stop ()
| Stop computation, sets the running flag to false.
void | wait ()
| Waits until the thread finishes.
Signals inherited from Digikam::LoadSaveThread
void | signalImageLoaded (const LoadingDescription &loadingDescription, const DImg &img)
| This signal is emitted when the loading process has finished.
void | signalImageSaved (const QString &filePath, bool success)
void | signalImageStartedLoading (const LoadingDescription &loadingDescription)
| All signals are delivered to the thread from where the LoadSaveThread object has been created.
void | signalImageStartedSaving (const QString &filePath)
void | signalLoadingProgress (const LoadingDescription &loadingDescription, float progress)
| This signal is emitted whenever new progress info is available and the notification policy allows emitting the signal.
void | signalMoreCompleteLoadingAvailable (const LoadingDescription &oldLoadingDescription, const LoadingDescription &newLoadingDescription)
| This signal is emitted if.
void | signalQImageThumbnailLoaded (const LoadingDescription &loadingDescription, const QImage &img)
void | signalSavingProgress (const QString &filePath, float progress)
Signals inherited from Digikam::DynamicThread
void | finished ()
void | starting ()
| Emitted if emitSignals is enabled.
Static Public Member Functions inherited from Digikam::LoadSaveThread
static int | exifOrientation (const QString &filePath, const DMetadata &metadata, bool isRaw, bool fromRawEmbeddedPreview)
| Retrieves the Exif orientation, either from the info provider if available, or from the metadata.
static LoadSaveFileInfoProvider * | infoProvider ()
static void | setInfoProvider (LoadSaveFileInfoProvider *const infoProvider)
Protected Member Functions inherited from Digikam::ManagedLoadSaveThread
void | load (const LoadingDescription &description, LoadingMode loadingMode, AccessMode mode=AccessModeReadWrite)
void | load (const LoadingDescription &description, LoadingMode loadingMode, LoadingPolicy policy, AccessMode mode=AccessModeReadWrite)
void | loadPreview (const LoadingDescription &description, LoadingPolicy policy)
void | loadThumbnail (const LoadingDescription &description)
void | preloadThumbnail (const LoadingDescription &description)
void | preloadThumbnailGroup (const QList< LoadingDescription > &descriptions)
void | prependThumbnailGroup (const QList< LoadingDescription > &descriptions)
void | shutDown () override
| If you are deleting data in your destructor which is accessed from the thread, do one of the following from your destructor to guarantee a safe shutdown: 1) Call this method 2) Call stop() and wait(), knowing that nothing will call start() anymore after this 3) Be sure the thread will never be running at destruction.
Protected Member Functions inherited from Digikam::LoadSaveThread
void | notificationReceived ()
void | run () override
| Implement this pure virtual function in your subclass.
Protected Member Functions inherited from Digikam::DynamicThread
bool | runningFlag () const volatile
| In you run() method, you shall regularly check for runningFlag() and cleanup and return if false.
void | start (QMutexLocker< QMutex > &locker)
| Doing the same as start(), stop() and wait above, provide it with a locked QMutexLocker on mutex().
void | stop (const QMutexLocker< QMutex > &locker)
QMutex * | threadMutex () const
| This is the non-recursive mutex used to protect state variables and waiting in this class.
void | wait (QMutexLocker< QMutex > &locker)
Protected Attributes inherited from Digikam::ManagedLoadSaveThread
LoadingPolicy | m_loadingPolicy = LoadingPolicyAppend
TerminationPolicy | m_terminationPolicy = TerminationPolicyTerminateLoading
Protected Attributes inherited from Digikam::LoadSaveThread
LoadSaveTask * | m_currentTask = nullptr
QMutex | m_mutex
NotificationPolicy | m_notificationPolicy = NotificationPolicyTimeLimited
QList< LoadSaveTask * > | m_todo