AusweisApp2
ReaderManagerPlugInInfo.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "EnumHelper.h"
10 
11 #include <QMap>
12 #include <QString>
13 #include <QVariant>
14 
15 namespace governikus
16 {
17 
18 defineEnumType(ReaderManagerPlugInType
19  , UNKNOWN
20  , MOCK
21  , PCSC
22  , NFC
23  , REMOTE_IFD
24  , LOCAL_IFD
25  , SMART
26  , SIMULATOR
27  )
28 
29 
30 class ReaderManagerPlugInInfo
31 {
32  public:
33  enum class Key
34  {
35  PCSC_LITE_VERSION, LOCAL_IFD_STATE
36  };
37 
38  public:
39  ReaderManagerPlugInInfo(ReaderManagerPlugInType pType = ReaderManagerPlugInType::UNKNOWN,
40  bool pEnabled = false,
41  bool pAvailable = false);
42 
43  [[nodiscard]] const ReaderManagerPlugInType& getPlugInType() const
44  {
45  return mType;
46  }
47 
48 
49  [[nodiscard]] bool hasValue(Key pKey) const
50  {
51  return mValues.contains(pKey);
52  }
53 
54 
55  [[nodiscard]] QVariant getValue(Key pKey) const
56  {
57  return mValues.value(pKey);
58  }
59 
60 
61  void setValue(Key pKey, const QVariant& pValue)
62  {
63  mValues.insert(pKey, pValue);
64  }
65 
66 
70  [[nodiscard]] bool isEnabled() const
71  {
72  return mEnabled;
73  }
74 
75 
76  void setEnabled(bool pEnabled)
77  {
78  mEnabled = pEnabled;
79  }
80 
81 
85  [[nodiscard]] bool isAvailable() const
86  {
87  return mAvailable;
88  }
89 
90 
91  void setAvailable(bool pAvailable)
92  {
93  mAvailable = pAvailable;
94  }
95 
96  private:
97  ReaderManagerPlugInType mType;
98  QMap<Key, QVariant> mValues;
99  bool mEnabled;
100  bool mAvailable;
101 };
102 
103 } // namespace governikus
A simple template renderer.
Definition: ActivationContext.h:15
UNKNOWN
Definition: ResponseApdu.h:63
defineEnumType(ActivationType, UNKNOWN, SHOWUI, STATUS, TCTOKENURL) defineEnumType(StatusFormat
Format types for status responses.