AusweisApp2
PcscReader.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "PcscReaderFeature.h"
10 #include "PcscUtils.h"
11 #include "Reader.h"
12 
13 #include <QTimerEvent>
14 
15 
16 namespace governikus
17 {
18 
19 class PcscCard;
20 
21 
23  : public Reader
24 {
25  Q_OBJECT
26 
27  private:
28  SCARD_READERSTATE mReaderState;
29  PcscReaderFeature mReaderFeatures;
30  QScopedPointer<PcscCard> mPcscCard;
31 
32  SCARDCONTEXT mContextHandle;
33 
34  void fetchGetReaderInfo();
35  PCSC_RETURNCODE readReaderFeatures();
36 
37  void updateCard() override;
38 
39  public:
40  explicit PcscReader(const QString& pReaderName);
41  ~PcscReader() override;
42 
43  [[nodiscard]] Card* getCard() const override;
44 
45  [[nodiscard]] SCARD_READERSTATE getState() const;
46 
47  [[nodiscard]] bool hasFeature(FeatureID pFeatureID) const;
48 
53  [[nodiscard]] PCSC_INT getFeatureValue(FeatureID pFeatureID) const;
54 
55 
56 };
57 
58 } // namespace governikus
Definition: Card.h:45
Definition: PcscReader.h:24
SCARD_READERSTATE getState() const
Definition: PcscReader.cpp:69
PcscReader(const QString &pReaderName)
Definition: PcscReader.cpp:16
~PcscReader() override
Definition: PcscReader.cpp:58
bool hasFeature(FeatureID pFeatureID) const
Definition: PcscReader.cpp:75
Card * getCard() const override
Definition: PcscReader.cpp:331
PCSC_INT getFeatureValue(FeatureID pFeatureID) const
Check with hasFeature first for existence of the feature, otherwise this will cause an exception.
Definition: PcscReader.cpp:81
Definition: Reader.h:19
A simple template renderer.
Definition: ActivationContext.h:15