AusweisApp2
Lade ...
Suche ...
Keine Treffer
ReaderManagerPlugIn.h
gehe zur Dokumentation dieser Datei
1
8#pragma once
9
10#include "GlobalStatus.h"
11#include "Reader.h"
12#include "ReaderInfo.h"
14
15#include <QObject>
16#include <QThread>
17
18namespace governikus
19{
20
22 : public QObject
23{
24 Q_OBJECT
26
27 private:
28 ReaderManagerPlugInInfo mInfo;
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 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]] bool isScanRunning() const
67 {
68 return mScanRunning;
69 }
70
71
72 [[nodiscard]] virtual QList<Reader*> getReaders() const = 0;
73
74
75 virtual void init()
76 {
77 Q_ASSERT(QObject::thread() == QThread::currentThread());
78 }
79
80
81 void reset()
82 {
83 shutdown();
84 init();
85 }
86
87
88 virtual void shutdown()
89 {
90 }
91
92
93 virtual void insert(const QString& pReaderName, const QVariant& pData)
94 {
95 Q_UNUSED(pReaderName)
96 Q_UNUSED(pData)
97 }
98
99
100 void shelve();
101
102
103 virtual void startScan(bool pAutoConnect);
104 virtual void stopScan(const QString& pError = QString());
105
106 Q_SIGNALS:
107 void fireStatusChanged(const ReaderManagerPlugInInfo& pInfo);
108 void fireReaderAdded(const ReaderInfo& pInfo);
109 void fireReaderRemoved(const ReaderInfo& pInfo);
110 void fireCardInserted(const ReaderInfo& pInfo);
111 void fireCardRemoved(const ReaderInfo& pInfo);
112 void fireCardInfoChanged(const ReaderInfo& pInfo);
114};
115
116} // namespace governikus
117
118Q_DECLARE_INTERFACE(governikus::ReaderManagerPlugIn, "governikus.ReaderManagerPlugIn")
Definition: ReaderInfo.h:18
Definition: ReaderManagerPlugIn.h:23
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:93
virtual void init()
Definition: ReaderManagerPlugIn.h:75
friend class MockReaderManagerPlugIn
Definition: ReaderManagerPlugIn.h:25
~ReaderManagerPlugIn() override=default
virtual void shutdown()
Definition: ReaderManagerPlugIn.h:88
bool isScanRunning() const
Definition: ReaderManagerPlugIn.h:66
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:60
void fireCardRemoved(const ReaderInfo &pInfo)
virtual void startScan(bool pAutoConnect)
Definition: ReaderManagerPlugIn.cpp:33
void setPlugInEnabled(bool pEnabled)
Definition: ReaderManagerPlugIn.h:32
void reset()
Definition: ReaderManagerPlugIn.h:81
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)
A simple template renderer.
Definition: ActivationContext.h:15