|
| IccTransformFilter (DImg *const orgImage, QObject *const parent, const IccTransform &transform) |
|
| IccTransformFilter (QObject *const parent=nullptr) |
|
FilterAction | filterAction () override |
|
QString | filterIdentifier () const override |
|
bool | parametersSuccessfullyRead () const override |
| Optional error handling for readParameters.
|
|
void | readParameters (const FilterAction &action) override |
|
QString | readParametersError (const FilterAction &actionThatFailed) const override |
|
| DImgThreadedFilter (DImg *const orgImage, QObject *const parent, const QString &name=QString()) |
| Constructs a filter with all arguments (ready to use).
|
|
| DImgThreadedFilter (QObject *const parent=nullptr, const QString &name=QString()) |
| Constructs a filter without argument.
|
|
virtual void | cancelFilter () |
| Cancel the threaded computation.
|
|
const QString & | filterName () |
|
int | filterVersion () const |
|
DImg | getTargetImage () |
|
QList< int > | multithreadedSteps (int stop, int start=0) const |
| This method return a list of steps to process parallelized operation in filter using QtConcurrents API.
|
|
void | setFilterName (const QString &name) |
|
void | setFilterVersion (int version) |
| Replaying a filter action: Set the filter version.
|
|
void | setOriginalImage (const DImg &orgImage) |
|
void | setupAndStartDirectly (const DImg &orgImage, DImgThreadedFilter *const master, int progressBegin=0, int progressEnd=100) |
| Initializes the filter for use as a slave and directly starts computation (in-thread)
|
|
void | setupFilter (const DImg &orgImage) |
| You need to call this and then start filter of you used the constructor not setting an original image.
|
|
virtual void | startFilter () |
| Start the threaded computation.
|
|
virtual void | startFilterDirectly () |
| Start computation of this filter, directly in this thread.
|
|
virtual QList< int > | supportedVersions () const |
|
| 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 |
|
virtual bool | continueQuery () |
| Queries whether the image IO operation shall be continued.
|
|
virtual float | granularity () |
|
|
void | filterImage () override |
| Main image filter method.
|
|
void | progressInfo (float progress) override |
| Posts progress information about image IO.
|
|
| DImgThreadedFilter (DImgThreadedFilter *const master, const DImg &orgImage, const DImg &destImage, int progressBegin=0, int progressEnd=100, const QString &name=QString()) |
| Support for chaining two filters as master and thread.
|
|
virtual void | cleanupFilter () |
| Clean up filter data if necessary, called by stopComputation() method.
|
|
virtual void | initFilter () |
| Start filter operation before threaded method.
|
|
void | initMaster () |
|
void | initSlave (DImgThreadedFilter *const master, int progressBegin=0, int progressEnd=100) |
| Initialize the filter for use as a slave - reroutes progress info to master.
|
|
virtual int | modulateProgress (int progress) |
| This method modulates the progress value from the 0..100 span to the span of this slave.
|
|
virtual void | postProgress (int progress) |
| Emit progress info.
|
|
virtual void | prepareDestImage () |
|
void | run () override |
| List of threaded operations by filter.
|
|
void | setSlave (DImgThreadedFilter *const slave) |
| Inform the master that there is currently a slave.
|
|
bool | runningFlag () const volatile |
| In you run() method, you shall regularly check for runningFlag() and cleanup and return if false.
|
|
virtual void | shutDown () |
| 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.
|
|
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) |
|
|
enum | State { Inactive
, Scheduled
, Running
, Deactivating
} |
|
void | start () |
|
void | stop () |
| Stop computation, sets the running flag to false.
|
|
void | wait () |
| Waits until the thread finishes.
|
|
void | signalFinished (bool success) |
| Emitted when the computation has completed.
|
|
void | signalProgress (int progress) |
| Emitted when progress info from the calculation is available.
|
|
void | signalStarted () |
| This signal is emitted when image data is available and the computation has started.
|
|
void | finished () |
|
void | starting () |
| Emitted if emitSignals is enabled.
|
|
DImg | m_destImage |
| Output image data.
|
|
DImgThreadedFilter * | m_master = nullptr |
| The master of this slave filter.
|
|
QString | m_name |
| Filter name.
|
|
DImg | m_orgImage |
| Copy of original Image data.
|
|
int | m_progressBegin = 0 |
| The progress span that a slave filter uses in the parent filter's progress.
|
|
int | m_progressCurrent = 0 |
| To prevent signals bombarding with progress indicator value in postProgress().
|
|
int | m_progressSpan = 0 |
|
DImgThreadedFilter * | m_slave = nullptr |
| The current slave.
|
|
int | m_version = 1 |
|
bool | m_wasCancelled = false |
|
bool Digikam::IccTransformFilter::parametersSuccessfullyRead |
( |
| ) |
const |
|
overridevirtual |
When readParameters() has been called, this method will return true if the call was successful, and false if not. If returning false, readParametersError() will give an error message. The default implementation always returns success. You only need to reimplement when a filter is likely to fail in a different environment, e.g. depending on availability of installed files. These methods have an undefined return value if readParameters() was not called previously.
Reimplemented from Digikam::DImgThreadedFilter.