AusweisApp2
ReaderInfo.h
gehe zur Dokumentation dieser Datei
1 
5 #pragma once
6 
7 #include "CardInfo.h"
10 #include "SmartCardDefinitions.h"
11 
12 #include <QString>
13 
14 namespace governikus
15 {
17 {
18  friend class Reader;
19 
20  ReaderManagerPlugInType mPlugInType;
21  QString mName;
22  bool mBasicReader;
23  CardInfo mCardInfo;
24  bool mConnected;
25  int mMaxApduLength;
26 
27  public:
28  explicit ReaderInfo(const QString& pName = QString(),
29  ReaderManagerPlugInType pPlugInType = ReaderManagerPlugInType::UNKNOWN,
30  const CardInfo& pCardInfo = CardInfo(CardType::NONE));
31 
33 
34 
35  [[nodiscard]] ReaderManagerPlugInType getPlugInType() const
36  {
37  return mPlugInType;
38  }
39 
40 
42  {
43  return mCardInfo;
44  }
45 
46 
47  [[nodiscard]] const CardInfo& getCardInfo() const
48  {
49  return mCardInfo;
50  }
51 
52 
53  [[nodiscard]] QString getCardTypeString() const
54  {
55  return mCardInfo.getCardTypeString();
56  }
57 
58 
59  [[nodiscard]] bool hasCard() const
60  {
61  return mCardInfo.isAvailable();
62  }
63 
64 
65  [[nodiscard]] bool hasEidCard() const
66  {
67  return mCardInfo.isEid();
68  }
69 
70 
71  [[nodiscard]] bool hasPassport() const
72  {
73  return mCardInfo.isPassport();
74  }
75 
76 
77  [[nodiscard]] int getRetryCounter() const
78  {
79  return mCardInfo.getRetryCounter();
80  }
81 
82 
83  [[nodiscard]] bool isRetryCounterDetermined() const
84  {
85  return mCardInfo.isRetryCounterDetermined();
86  }
87 
88 
89  [[nodiscard]] bool isPinDeactivated() const
90  {
91  return mCardInfo.isPinDeactivated();
92  }
93 
94 
95  [[nodiscard]] bool isPukInoperative() const
96  {
97  return mCardInfo.isPukInoperative();
98  }
99 
100 
101  void setCardInfo(const CardInfo& pCardInfo)
102  {
103  mCardInfo = pCardInfo;
104  }
105 
106 
107  [[nodiscard]] const QString& getName() const
108  {
109  return mName;
110  }
111 
112 
113  void setBasicReader(bool pIsBasicReader)
114  {
115  mBasicReader = pIsBasicReader;
116  }
117 
118 
119  [[nodiscard]] bool isBasicReader() const
120  {
121  return mBasicReader;
122  }
123 
124 
125  [[nodiscard]] bool isConnected() const
126  {
127  return mConnected;
128  }
129 
130 
131  void setConnected(bool pConnected)
132  {
133  mConnected = pConnected;
134  }
135 
136 
137  void setMaxApduLength(int pMaxApduLength)
138  {
139  mMaxApduLength = pMaxApduLength;
140  }
141 
142 
143  [[nodiscard]] int getMaxApduLength() const
144  {
145  return mMaxApduLength;
146  }
147 
148 
149  [[nodiscard]] bool sufficientApduLength() const
150  {
151  return mMaxApduLength == -1 || mMaxApduLength >= 500;
152  }
153 
154 
155 };
156 
157 } // namespace governikus
const QString & getName() const
Definition: ReaderInfo.h:107
bool isPinDeactivated() const
Definition: ReaderInfo.h:89
Holds smart card informations.
Definition: CardInfo.h:28
bool sufficientApduLength() const
Definition: ReaderInfo.h:149
int getRetryCounter() const
Definition: CardInfo.cpp:88
bool isAvailable() const
Definition: CardInfo.cpp:64
ReaderInfo(const QString &pName=QString(), ReaderManagerPlugInType pPlugInType=ReaderManagerPlugInType::UNKNOWN, const CardInfo &pCardInfo=CardInfo(CardType::NONE))
bool isConnected() const
Definition: ReaderInfo.h:125
bool isPinDeactivated() const
The online identification function has not been activated by the competent authority.
Definition: CardInfo.cpp:106
int getMaxApduLength() const
Definition: ReaderInfo.h:143
void setBasicReader(bool pIsBasicReader)
Definition: ReaderInfo.h:113
bool hasCard() const
Definition: ReaderInfo.h:59
Definition: Reader.h:17
UNKNOWN
Definition: SmartCardDefinitions.h:18
bool hasPassport() const
Definition: ReaderInfo.h:71
Definition: ReaderInfo.h:16
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
void setCardInfo(const CardInfo &pCardInfo)
Definition: ReaderInfo.h:101
bool isPukInoperative() const
Definition: ReaderInfo.h:95
bool isRetryCounterDetermined() const
Definition: ReaderInfo.h:83
bool isBasicReader() const
Definition: ReaderInfo.h:119
CardInfo & getCardInfo()
Definition: ReaderInfo.h:41
void setConnected(bool pConnected)
Definition: ReaderInfo.h:131
bool isPassport() const
Definition: CardInfo.cpp:76
QString getCardTypeString() const
Definition: ReaderInfo.h:53
int getRetryCounter() const
Definition: ReaderInfo.h:77
void setMaxApduLength(int pMaxApduLength)
Definition: ReaderInfo.h:137
ReaderConfigurationInfo getReaderConfigurationInfo() const
Definition: ReaderInfo.cpp:38
bool isRetryCounterDetermined() const
Definition: CardInfo.cpp:100
bool hasEidCard() const
Definition: ReaderInfo.h:65
Definition: ReaderConfigurationInfo.h:18
const CardInfo & getCardInfo() const
Definition: ReaderInfo.h:47
ReaderManagerPlugInType getPlugInType() const
Definition: ReaderInfo.h:35
bool isPukInoperative() const
The PUK is inoperative.
Definition: CardInfo.cpp:112
bool isEid() const
Definition: CardInfo.cpp:70
QString getCardTypeString() const
Definition: CardInfo.cpp:38