MeVisLab Toolbox Reference
mlProcessAllPagesJob.h
Go to the documentation of this file.
1/*************************************************************************************
2**
3** Copyright 2009, MeVis Medical Solutions AG
4**
5** The user may use this file in accordance with the license agreement provided with
6** the Software or, alternatively, in accordance with the terms contained in a
7** written agreement between the user and MeVis Medical Solutions AG.
8**
9** For further information use the contact form at https://www.mevislab.de/contact
10**
11**************************************************************************************/
12
13#ifndef ML_PROCESS_ALL_PAGES_JOB_H
14#define ML_PROCESS_ALL_PAGES_JOB_H
15
17
18// ML-includes
19#include "mlInitSystemML.h"
20
21
22#include "mlPagedImage.h"
23#include "mlTileRequest.h"
24#include "mlPageRequestCursor.h"
25#include "mlGetTileJob.h"
26
28
29class PageRequest;
30class PageRequestProcessor;
31class ProcessAllPagesHandler;
32
33//-------------------------------------------------------------------------------------------
35//-------------------------------------------------------------------------------------------
37{
38public:
41 ProcessAllPagesJob(Module& module, ProcessAllPagesHandler* handler = nullptr, const SubImageBox& box = SubImageBox(), int outputIndex = -1);
42
45
50
51 void delegateProgressUpdate(double progress) override;
52
53private:
55 ProcessAllPagesHandler* _handler;
57 PagedImage _tempImage;
59 SubImageBox _box;
60
62 PagedImage* _image;
63
64 bool _wantsProgressUpdates;
65};
66
68
69#endif //of __mlProcessAllPagesJob_H
70
Base class for TileRequest based jobs.
Base class for an image processing module of the ML.
Definition mlModule.h:151
Abstract base class for page request processors.
The class PagedImage, representing a fragmented image that manages properties and data of an image lo...
Base class for handlers that are used for the Module::processAllPages facility.
Public interface for processing all pages of a temporary output image.
MLErrorCode init(PageRequestProcessor &processor) override
Initializes the process all pages request and adds it to the processor if no error occurs.
ProcessAllPagesJob(Module &module, ProcessAllPagesHandler *handler=nullptr, const SubImageBox &box=SubImageBox(), int outputIndex=-1)
Creates a ProcessAllPagesJob for the given Module module with the requested box.
void delegateProgressUpdate(double progress) override
Emits the progress when it changes, to be reimplemented in derived classes.
~ProcessAllPagesJob() override
Destructor.
MLint32 MLErrorCode
Type of an ML Error code.
Definition mlTypeDefs.h:716
#define MLEXPORT
To export symbols from a DLL/shared object, we need to mark them with the MLEXPORT symbol.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
TSubImageBox< MLint > SubImageBox
Defines the standard SubImageBox type used in the ML. Its size varies with the size of the MLint type...