AusweisApp2
Lade ...
Suche ...
Keine Treffer
ReaderManagerPlugIn.h
gehe zur Dokumentation dieser Datei
1
8#pragma once
9
10#include "GlobalStatus.h"
11#include "ReaderInfo.h"
13
14#include <QObject>
15#include <QThread>
16
17namespace governikus
18{
19
20class Reader;
21
23 : public QObject
24{
25 Q_OBJECT
26 ReaderManagerPlugInInfo mInfo;
27
28 private:
29 bool mScanRunning;
30
31 protected:
32 void setPlugInEnabled(bool pEnabled)
33 {
34 if (mInfo.isEnabled() != pEnabled)
35 {
36 mInfo.setEnabled(pEnabled);
37 Q_EMIT fireStatusChanged(mInfo);
38 }
39 }
40
41
42 void setPlugInAvailable(bool pAvailable)
43 {
44 mInfo.setAvailable(pAvailable);
45 }
46
47
48 void setPlugInValue(ReaderManagerPlugInInfo::Key pKey, const QVariant& pValue)
49 {
50 mInfo.setValue(pKey, pValue);
51 }
52
53 public:
54 ReaderManagerPlugIn(ReaderManagerPlugInType pPlugInType,
55 bool pAvailable = false,
56 bool pPlugInEnabled = false);
57 ~ReaderManagerPlugIn() override = default;
58
59 [[nodiscard]] const ReaderManagerPlugInInfo& getInfo() const
60 {
61 return mInfo;
62 }
63
64
65 [[nodiscard]] bool isScanRunning() const
66 {
67 return mScanRunning;
68 }
69
70
71 [[nodiscard]] virtual QList<Reader*> getReaders() const = 0;
72
73
74 virtual void init()
75 {
76 Q_ASSERT(QObject::thread() == QThread::currentThread());
77 }
78
79
80 void reset()
81 {
82 shutdown();
83 init();
84 }
85
86
87 virtual void shutdown()
88 {
89 }
90
91
92 virtual void startScan(bool pAutoConnect);
93 virtual void stopScan(const QString& pError = QString());
94
95 Q_SIGNALS:
96 void fireStatusChanged(const ReaderManagerPlugInInfo& pInfo);
97 void fireReaderAdded(const ReaderInfo& pInfo);
98 void fireReaderRemoved(const ReaderInfo& pInfo);
99 void fireCardInserted(const ReaderInfo& pInfo);
100 void fireCardRemoved(const ReaderInfo& pInfo);
103};
104
105} // namespace governikus
106
107Q_DECLARE_INTERFACE(governikus::ReaderManagerPlugIn, "governikus.ReaderManagerPlugIn")
Definition: ReaderInfo.h:17
Definition: ReaderManagerPlugIn.h:24
void setPlugInAvailable(bool pAvailable)
Definition: ReaderManagerPlugIn.h:42
void setPlugInValue(ReaderManagerPlugInInfo::Key pKey, const QVariant &pValue)
Definition: ReaderManagerPlugIn.h:48
virtual void init()
Definition: ReaderManagerPlugIn.h:74
void fireCardRetryCounterChanged(const ReaderInfo &pInfo)
~ReaderManagerPlugIn() override=default
virtual void shutdown()
Definition: ReaderManagerPlugIn.h:87
bool isScanRunning() const
Definition: ReaderManagerPlugIn.h:65
virtual void stopScan(const QString &pError=QString())
Definition: ReaderManagerPlugIn.cpp:29
void fireReaderPropertiesUpdated(const ReaderInfo &pInfo)
const ReaderManagerPlugInInfo & getInfo() const
Definition: ReaderManagerPlugIn.h:59
void fireCardRemoved(const ReaderInfo &pInfo)
virtual void startScan(bool pAutoConnect)
Definition: ReaderManagerPlugIn.cpp:19
void setPlugInEnabled(bool pEnabled)
Definition: ReaderManagerPlugIn.h:32
void reset()
Definition: ReaderManagerPlugIn.h:80
void fireReaderAdded(const ReaderInfo &pInfo)
virtual QList< Reader * > getReaders() const =0
void fireReaderRemoved(const ReaderInfo &pInfo)
void fireStatusChanged(const ReaderManagerPlugInInfo &pInfo)
void fireCardInserted(const ReaderInfo &pInfo)
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15