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
Holds smart card informations.
Definition: CardInfo.h:29
bool isPassport() const
Definition: CardInfo.cpp:76
QString getCardTypeString() const
Definition: CardInfo.cpp:38
bool isPukInoperative() const
The PUK is inoperative.
Definition: CardInfo.cpp:112
bool isEid() const
Definition: CardInfo.cpp:70
bool isPinDeactivated() const
The online identification function has not been activated by the competent authority.
Definition: CardInfo.cpp:106
int getRetryCounter() const
Definition: CardInfo.cpp:88
bool isRetryCounterDetermined() const
Definition: CardInfo.cpp:100
bool isAvailable() const
Definition: CardInfo.cpp:64
Definition: ReaderConfigurationInfo.h:19
Definition: ReaderInfo.h:17
void setCardInfo(const CardInfo &pCardInfo)
Definition: ReaderInfo.h:101
bool isBasicReader() const
Definition: ReaderInfo.h:119
ReaderManagerPlugInType getPlugInType() const
Definition: ReaderInfo.h:35
void setMaxApduLength(int pMaxApduLength)
Definition: ReaderInfo.h:137
ReaderInfo(const QString &pName=QString(), ReaderManagerPlugInType pPlugInType=ReaderManagerPlugInType::UNKNOWN, const CardInfo &pCardInfo=CardInfo(CardType::NONE))
bool isConnected() const
Definition: ReaderInfo.h:125
bool sufficientApduLength() const
Definition: ReaderInfo.h:149
bool isRetryCounterDetermined() const
Definition: ReaderInfo.h:83
ReaderConfigurationInfo getReaderConfigurationInfo() const
Definition: ReaderInfo.cpp:38
int getMaxApduLength() const
Definition: ReaderInfo.h:143
bool isPinDeactivated() const
Definition: ReaderInfo.h:89
bool hasPassport() const
Definition: ReaderInfo.h:71
int getRetryCounter() const
Definition: ReaderInfo.h:77
bool isPukInoperative() const
Definition: ReaderInfo.h:95
const CardInfo & getCardInfo() const
Definition: ReaderInfo.h:47
bool hasCard() const
Definition: ReaderInfo.h:59
const QString & getName() const
Definition: ReaderInfo.h:107
QString getCardTypeString() const
Definition: ReaderInfo.h:53
void setBasicReader(bool pIsBasicReader)
Definition: ReaderInfo.h:113
CardInfo & getCardInfo()
Definition: ReaderInfo.h:41
bool hasEidCard() const
Definition: ReaderInfo.h:65
void setConnected(bool pConnected)
Definition: ReaderInfo.h:131
Definition: Reader.h:19
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
UNKNOWN
Definition: SmartCardDefinitions.h:18