AusweisApp
Lade ...
Suche ...
Keine Treffer
IfdVersion.h
gehe zur Dokumentation dieser Datei
1
5#pragma once
6
7#include <QDebug>
8#include <QList>
9#include <QString>
10
11namespace governikus
12{
14{
15 public:
16 enum class Version : int
17 {
18 Unknown = -1,
19 v0,
20 v2,
21 latest = v2
22 };
23
24 private:
25 const Version mVersion;
26
27 static Version fromString(const QString& pVersionString);
28
29 public:
30 explicit IfdVersion(Version pVersion = Version::Unknown);
31 explicit IfdVersion(const QString& pVersionString);
32
33 [[nodiscard]] Version getVersion() const;
34 [[nodiscard]] bool isValid() const;
35 [[nodiscard]] bool isSupported() const;
36
37 bool operator==(const IfdVersion& pOther) const;
38 bool operator!=(const IfdVersion& pOther) const;
39
40 [[nodiscard]] QString toString() const;
41
42 static QList<Version> supported();
43 static Version selectLatestSupported(const QList<Version>& pVersions);
44};
45
46
47inline QDebug operator<<(QDebug pDbg, const IfdVersion& pVersion)
48{
49 pDbg << pVersion.toString();
50 return pDbg;
51}
52
53
54inline QDebug operator<<(QDebug pDbg, const IfdVersion::Version& pVersion)
55{
56 pDbg << IfdVersion(pVersion).toString();
57 return pDbg;
58}
59
60
61#ifndef QT_NO_DEBUG
62inline bool operator ==(const IfdVersion& pLeft, const IfdVersion::Version& pRight)
63{
64 return pLeft.getVersion() == pRight;
65}
66
67
68#endif
69} // namespace governikus
Definition IfdVersion.h:14
QString toString() const
Definition IfdVersion.cpp:52
IfdVersion(Version pVersion=Version::Unknown)
Definition IfdVersion.cpp:28
bool operator==(const IfdVersion &pOther) const
Definition IfdVersion.cpp:99
static Version selectLatestSupported(const QList< Version > &pVersions)
Definition IfdVersion.cpp:76
static QList< Version > supported()
Definition IfdVersion.cpp:70
bool isSupported() const
Definition IfdVersion.cpp:93
bool operator!=(const IfdVersion &pOther) const
Definition IfdVersion.cpp:105
bool isValid() const
Definition IfdVersion.cpp:40
Version
Definition IfdVersion.h:17
Version getVersion() const
Definition IfdVersion.cpp:46
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:17
QDebug operator<<(QDebug pDbg, const CommandApdu &pCommandApdu)
Definition CommandApdu.h:96
bool operator==(const CommandApdu &pLeft, const CommandApdu &pRight)
Definition CommandApdu.h:105