diff options
| author | MoroccanMalinois <MoroccanMalinois@protonmail.com> | 2017-01-31 04:36:08 +0000 |
|---|---|---|
| committer | MoroccanMalinois <MoroccanMalinois@protonmail.com> | 2017-01-31 04:36:08 +0000 |
| commit | 93d2eb5e1a064eb0eb1ad376cca71f2a3519e5ec (patch) | |
| tree | 207a25c7308dcc70aea12499f5944a98ccbdefbd /src/QR-Code-scanner/QrCodeScanner.h | |
| parent | 43d5bd3e2db54d0475a3a59e5a8859382aca732c (diff) | |
| download | monzero-gui-93d2eb5e1a064eb0eb1ad376cca71f2a3519e5ec.tar.gz monzero-gui-93d2eb5e1a064eb0eb1ad376cca71f2a3519e5ec.tar.xz monzero-gui-93d2eb5e1a064eb0eb1ad376cca71f2a3519e5ec.zip | |
add qrcode scanner
Diffstat (limited to 'src/QR-Code-scanner/QrCodeScanner.h')
| -rw-r--r-- | src/QR-Code-scanner/QrCodeScanner.h | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/src/QR-Code-scanner/QrCodeScanner.h b/src/QR-Code-scanner/QrCodeScanner.h new file mode 100644 index 00000000..791800f0 --- /dev/null +++ b/src/QR-Code-scanner/QrCodeScanner.h @@ -0,0 +1,79 @@ +// Copyright (c) 2014-2017, The Monero Project +// +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, are +// permitted provided that the following conditions are met: +// +// 1. Redistributions of source code must retain the above copyright notice, this list of +// conditions and the following disclaimer. +// +// 2. Redistributions in binary form must reproduce the above copyright notice, this list +// of conditions and the following disclaimer in the documentation and/or other +// materials provided with the distribution. +// +// 3. Neither the name of the copyright holder nor the names of its contributors may be +// used to endorse or promote products derived from this software without specific +// prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF +// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef QRCODESCANNER_H_ +#define QRCODESCANNER_H_ + +#include <QImage> +#include <QVideoFrame> +#ifdef WITH_SCANNER +#include "QrScanThread.h" +#endif + +class QVideoProbe; +class QCamera; + +class QrCodeScanner : public QObject +{ + Q_OBJECT + + Q_PROPERTY(bool enabled READ enabled WRITE setEnabled NOTIFY enabledChanged) + +public: + QrCodeScanner(QObject *parent = Q_NULLPTR); + + void setSource(QCamera*); + + bool enabled() const; + void setEnabled(bool enabled); + +public Q_SLOTS: + void processCode(int type, const QString &data); + void processFrame(QVideoFrame); + +Q_SIGNALS: + void enabledChanged(); + + void decoded(const QString &address, const QString &payment_id, const QString &amount, const QString &tx_description, const QString &recipient_name); + void decode(int type, const QString &data); + void notifyError(const QString &error, bool warning = false); + +protected: +#ifdef WITH_SCANNER + void timerEvent(QTimerEvent *); + QrScanThread *m_thread; +#endif + int m_processTimerId; + int m_processInterval; + int m_enabled; + QVideoFrame m_curFrame; + QVideoProbe *m_probe; +}; + +#endif + |
