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