AusweisApp2
PcscReaderManagerPlugIn.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "PcscUtils.h"
10 #include "Reader.h"
11 #include "ReaderManagerPlugIn.h"
12 
13 #include <QMap>
14 #include <QStringList>
15 #include <QTimer>
16 
17 
18 namespace governikus
19 {
20 
22  : public ReaderManagerPlugIn
23 {
24  Q_OBJECT
25  Q_PLUGIN_METADATA(IID "governikus.ReaderManagerPlugIn" FILE "metadata.json")
27 
28  private:
29  SCARDCONTEXT mContextHandle;
30  QTimer mTimer;
31  QMap<QString, Reader*> mReaders;
32 
33  private:
34  PCSC_RETURNCODE readReaderNames(QStringList& pReaderNames);
35  void updateReaders();
36  inline QString extractReaderName(const PCSC_CHAR_PTR pReaderPointer) const;
37  void removeReader(const QString& pReaderName);
38  void removeReaders(const QStringList& pReaderNames);
39 
40  public:
42  ~PcscReaderManagerPlugIn() override;
43 
44  [[nodiscard]] QList<Reader*> getReaders() const override;
45 
46  void startScan(bool pAutoConnect) override;
47  void stopScan(const QString& pError = QString()) override;
48 };
49 
50 } // namespace governikus
Definition: PcscReaderManagerPlugIn.h:23
QList< Reader * > getReaders() const override
Definition: PcscReaderManagerPlugIn.cpp:45
PcscReaderManagerPlugIn()
Definition: PcscReaderManagerPlugIn.cpp:18
void startScan(bool pAutoConnect) override
Definition: PcscReaderManagerPlugIn.cpp:51
~PcscReaderManagerPlugIn() override
Definition: PcscReaderManagerPlugIn.cpp:33
void stopScan(const QString &pError=QString()) override
Definition: PcscReaderManagerPlugIn.cpp:67
Definition: ReaderManagerPlugIn.h:23
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16