6#ifndef PRISON_VIDEOSCANNER_H
7#define PRISON_VIDEOSCANNER_H
9#include "prisonscanner_export.h"
10#include "scanresult.h"
13#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
14#include <QAbstractVideoFilter>
24class VideoScannerPrivate;
34#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
35 :
public QAbstractVideoFilter
42 Q_PROPERTY(Prison::Format::BarcodeFormats formats READ formats WRITE setFormats NOTIFY formatsChanged)
44#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
45 Q_PROPERTY(QVideoSink *videoSink READ videoSink WRITE setVideoSink NOTIFY videoSinkChanged)
65#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
67 QVideoFilterRunnable *createFilterRunnable()
override;
93 void formatsChanged();
94 void videoSinkChanged();
97 std::unique_ptr<VideoScannerPrivate> d;
Result of a barcode scan attempt.
Definition scanresult.h:31
Scans a live video feed for barcodes.
Definition videoscanner.h:39
ScanResult result() const
The latest result of the barcode scan.
void resultContentChanged(const Prison::ScanResult &scanResult)
Emitted when a barcode with a new content has been detected, but not when merely the position of a ba...
void setFormats(Format::BarcodeFormats formats)
Sets the barcode formats to detect.
Format::BarcodeFormats formats() const
The barcode formats the scanner should look for.
QVideoSink * videoSink() const
The video sink being scanned for barcodes.
void setVideoSink(QVideoSink *sink)
Sets the video sink to scan for barcodes.
void resultChanged(const Prison::ScanResult &scanResult)
Emitted whenever we get a new scan result, as long as any property of the result changes.