4#include <opencv2/core.hpp>
5#include <opencv2/imgcodecs.hpp>
6#include <opencv2/imgproc.hpp>
11#include <QtConcurrent>
13#include <QMutexLocker>
15#include <QFutureSynchronizer>
19#include "stringcontainer.h"
20#include "modelinputpictures.h"
21#include "itransform.h"
22#include "progressable.h"
23#include "exportexif.h"
24#include "imageprocessor.h"
25#include "copyfilecommand.h"
26#include "cropcommand.h"
27#include "resizecommand.h"
28#include "transformcommand.h"
29#include "writetodiskcommand.h"
30#include "exiftagcommand.h"
32#define JPEG_COMPRESSION_PARAMS {cv::IMWRITE_JPEG_QUALITY, 100}
39 std::optional<ROI> roi = std::nullopt;
43 std::vector<ITransform *> transformations;
44 bool copy_images =
false;
50enum class ExportResultType
63 ExportResultType type;
69 return {ExportResultType::Success, 0,
""};
73 return {ExportResultType::PartialSuccess, broken,
""};
77 return {ExportResultType::Aborted, 0,
""};
81 return {ExportResultType::Failed, 0, msg};
128 std::vector<uint> m_keyframes;
129 volatile bool *m_stopped;
136 void reportProgress();
138 volatile int m_exportProgress = 0;
140 bool currentOperation(uint n);
Definition exportexif.h:14
The ExportThread class provides functionality to export images with given resolution and region of in...
Definition exportthread.h:100
The LogFile class logs progress as well as information about a process (e.g. Inport,...
Definition logfile.h:23
The Progressable interface is used to by multithreaded actions such as sampling or exporting to repor...
Definition progressable.h:18
The Reader interface defines functions which are used for reading and parsing the import.
Definition reader.h:23
The Resolution class encapsulates an image resolution (width and height). It provides functionality f...
Definition resolution.h:17
Definition exportthread.h:35
ExportResult holds the result of an export operation.
Definition exportthread.h:62