PrisonScanner 5.109.0
scanresult.h
1/*
2 SPDX-FileCopyrightText: 2022 Volker Krause <vkrause@kde.org>
3 SPDX-License-Identifier: MIT
4*/
5
6#ifndef PRISON_SCANRESULT_H
7#define PRISON_SCANRESULT_H
8
9#include "format.h"
10#include "prisonscanner_export.h"
11
12#include <QExplicitlySharedDataPointer>
13#include <QMetaType>
14#include <QRect>
15#include <QVariant>
16
17namespace Prison
18{
19
20class ScanResultPrivate;
21
30class PRISONSCANNER_EXPORT ScanResult
31{
32 Q_GADGET
33 Q_PROPERTY(bool hasContent READ hasContent)
34 Q_PROPERTY(QVariant content READ content)
35
36 Q_PROPERTY(bool hasText READ hasText)
37 Q_PROPERTY(QString text READ text)
38
39 Q_PROPERTY(bool hasBinaryData READ hasBinaryData)
40 Q_PROPERTY(QByteArray binaryData READ binaryData)
41
42 Q_PROPERTY(Prison::Format::BarcodeFormat format READ format)
43 Q_PROPERTY(QRect boundingRect READ boundingRect)
44
45public:
46 explicit ScanResult();
47 ScanResult(const ScanResult &);
49 ScanResult &operator=(const ScanResult &);
50
51 bool operator==(const ScanResult &other) const;
52
54 bool hasContent() const;
56 QVariant content() const;
57
59 bool hasText() const;
64 QString text() const;
65
67 bool hasBinaryData() const;
72 QByteArray binaryData() const;
73
76
81 QRect boundingRect() const;
82
83private:
84 friend class ScanResultPrivate;
85 QExplicitlySharedDataPointer<ScanResultPrivate> d;
86};
87
88}
89
90Q_DECLARE_METATYPE(Prison::ScanResult)
91
92#endif // PRISON_SCANRESULT_H
Result of a barcode scan attempt.
Definition scanresult.h:31
Format::BarcodeFormat format() const
The format of the detected barcode.
QVariant content() const
The barcode content, either a QString or a QByteArray.
bool hasContent() const
Returns true if a barcode has been found.
QByteArray binaryData() const
Returns the binary data content, if the content was binary data rather than text, otherwise returns a...
bool hasBinaryData() const
Returns true if the found barcode contained a binary data payload.
bool hasText() const
Returns true if the found barcode contained a textual payload.
QRect boundingRect() const
The bounding rectangle of the detected barcode in source coordinates.
QString text() const
Returns the textual barcode content, if the content was text rather than binary data,...
BarcodeFormat
Barcode formats.
Definition format.h:27