30 QImageCapture::FileFormat m_format = QImageCapture::UnspecifiedFormat;
32 QImageCapture::Quality m_quality = QImageCapture::NormalQuality;
35 bool operator==(
const QImageEncoderSettings &other) {
36 return m_format == other.m_format &&
37 m_resolution == other.m_resolution &&
38 m_quality == other.m_quality;
40 bool operator!=(
const QImageEncoderSettings &other) {
return !operator==(other); }
42 QImageCapture::FileFormat format()
const {
return m_format; }
43 void setFormat(QImageCapture::FileFormat f) { m_format = f; }
45 QSize resolution()
const {
return m_resolution; }
46 void setResolution(
const QSize &s) { m_resolution = s; }
47 void setResolution(
int width,
int height) { m_resolution = QSize(width, height); }
49 QImageCapture::Quality quality()
const {
return m_quality; }
50 void setQuality(QImageCapture::Quality quality) { m_quality = quality; }
58 virtual bool isReadyForCapture()
const = 0;
60 virtual int capture(
const QString &fileName) = 0;
61 virtual int captureToBuffer() = 0;
63 virtual QImageEncoderSettings imageSettings()
const = 0;
64 virtual void setImageSettings(
const QImageEncoderSettings &settings) = 0;
66 virtual void setMetaData(
const QMediaMetaData &m) { m_metaData = m; }
67 QMediaMetaData metaData()
const {
return m_metaData; }
69 QImageCapture *imageCapture() {
return m_imageCapture; }
71 static QString msgCameraNotReady();
72 static QString msgImageCaptureNotSet();
75 void readyForCaptureChanged(
bool ready);
77 void imageExposed(
int requestId);
78 void imageCaptured(
int requestId,
const QImage &preview);
79 void imageMetadataAvailable(
int id,
const QMediaMetaData &);
80 void imageAvailable(
int requestId,
const QVideoFrame &buffer);
81 void imageSaved(
int requestId,
const QString &fileName);
83 void error(
int id,
int error,
const QString &errorString);
86 explicit QPlatformImageCapture(QImageCapture *parent =
nullptr);
88 QImageCapture *m_imageCapture =
nullptr;
89 QMediaMetaData m_metaData;