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