|
| SharpenFilter (DImg *const orgImage, QObject *const parent=nullptr, double radius=0.0, double sigma=1.0) |
|
| SharpenFilter (DImgThreadedFilter *const parentFilter, const DImg &orgImage, const DImg &destImage, int progressBegin=0, int progressEnd=100, double radius=0.0, double sigma=1.0) |
| Constructor for slave mode: execute immediately in current thread with specified master filter.
|
|
| SharpenFilter (QObject *const parent=nullptr) |
|
FilterAction | filterAction () override |
|
QString | filterIdentifier () const override |
|
void | readParameters (const FilterAction &action) 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.
|
|
virtual bool | parametersSuccessfullyRead () const |
| Optional error handling for readParameters.
|
|
virtual QString | readParametersError (const FilterAction &actionThatFailed) const |
|
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 |
|
|
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.
|
|
| 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) |
|
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 |
|