AusweisApp
Lade ...
Suche ...
Keine Treffer
RemoteDeviceModel.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include "GlobalStatus.h"
14
15#include <QAbstractListModel>
16#include <QMap>
17#include <QSharedPointer>
18#include <QSslCertificate>
19#include <QString>
20#include <QTimer>
21#include <QVector>
22
23
24class test_RemoteDeviceModel;
25class test_RemoteDeviceFilterModel;
26
27
28namespace governikus
29{
30
32 : public QAbstractListModel
33{
35 friend class ::test_RemoteDeviceModel;
36 friend class ::test_RemoteDeviceFilterModel;
37
38 private:
40 QVector<RemoteDeviceModelEntry> mAllRemoteReaders;
41 RemoteServiceSettings::RemoteInfo mLastPairedDevice;
42 QTimer mTimer;
43 bool mIsDetectingRemoteDevices;
44#if defined(Q_OS_IOS)
46#endif
47
48 [[nodiscard]] bool indexIsValid(const QModelIndex& pIndex) const;
50 void updatePairedReaders();
51 void updateUnpairedReaders();
52 void removeVanishedReaders();
53 [[nodiscard]] QVector<RemoteDeviceModelEntry> presentReaders() const;
54 bool addOrUpdateReader(const RemoteDeviceModelEntry& pModelEntry);
55
56 private Q_SLOTS:
57 void onApplicationStateChanged(bool pIsAppInForeground);
58 void onUpdateReaderList();
59
60 public Q_SLOTS:
62
63 public:
77
78 explicit RemoteDeviceModel(QObject* pParent = nullptr);
79
80 [[nodiscard]] int rowCount(const QModelIndex& pParent = QModelIndex()) const override;
81 [[nodiscard]] QVariant data(const QModelIndex& pIndex, int pRole = Qt::DisplayRole) const override;
82 [[nodiscard]] QHash<int, QByteArray> roleNames() const override;
83
86 [[nodiscard]] bool isPaired(const QModelIndex& pIndex) const;
87 [[nodiscard]] bool isPairing(const QModelIndex& pIndex) const;
88 [[nodiscard]] bool isSupported(const QModelIndex& pIndex) const;
89 void forgetDevice(const QModelIndex& pIndex);
90 void forgetDevice(const QString& pDeviceId);
92
93 public Q_SLOTS:
97
100};
101
102
103} // namespace governikus
Code
Definition GlobalStatus.h:28
Definition RemoteDeviceModelEntry.h:26
Definition RemoteDeviceModel.h:33
RemoteDeviceModel(QObject *pParent=nullptr)
Definition RemoteDeviceModel.cpp:16
void forgetDevice(const QModelIndex &pIndex)
Definition RemoteDeviceModel.cpp:434
void onTranslationChanged()
Definition RemoteDeviceModel.cpp:428
SettingsRemoteRoles
Definition RemoteDeviceModel.h:65
@ IS_NETWORK_VISIBLE
Definition RemoteDeviceModel.h:70
@ LAST_CONNECTED
Definition RemoteDeviceModel.h:68
@ IS_SUPPORTED
Definition RemoteDeviceModel.h:71
@ DEVICE_ID
Definition RemoteDeviceModel.h:69
@ REMOTE_DEVICE_STATUS
Definition RemoteDeviceModel.h:67
@ IS_PAIRED
Definition RemoteDeviceModel.h:72
@ IS_PAIRING
Definition RemoteDeviceModel.h:73
@ LINK_QUALITY
Definition RemoteDeviceModel.h:74
@ IS_LAST_ADDED_DEVICE
Definition RemoteDeviceModel.h:75
@ REMOTE_DEVICE_NAME
Definition RemoteDeviceModel.h:66
QHash< int, QByteArray > roleNames() const override
Definition RemoteDeviceModel.cpp:41
bool isPairing(const QModelIndex &pIndex) const
Definition RemoteDeviceModel.cpp:328
bool isPaired(const QModelIndex &pIndex) const
Definition RemoteDeviceModel.cpp:317
void onDeviceDisconnected(GlobalStatus::Code pCloseCode, const QString &pId)
Definition RemoteDeviceModel.cpp:464
int rowCount(const QModelIndex &pParent=QModelIndex()) const override
Definition RemoteDeviceModel.cpp:234
void setLastPairedReader(const QSslCertificate &pCert)
Definition RemoteDeviceModel.cpp:456
void onKnownRemoteReadersChanged()
Definition RemoteDeviceModel.cpp:374
void setDetectRemoteDevices(bool pNewStatus)
Definition RemoteDeviceModel.cpp:350
QVariant data(const QModelIndex &pIndex, int pRole=Qt::DisplayRole) const override
Definition RemoteDeviceModel.cpp:240
bool isSupported(const QModelIndex &pIndex) const
Definition RemoteDeviceModel.cpp:339
QSharedPointer< IfdListEntry > getRemoteDeviceListEntry(const QModelIndex &pIndex) const
Definition RemoteDeviceModel.cpp:292
Definition RemoteServiceSettings.h:41
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:16
QSharedPointer< T > decodeObject(const QByteArray &pData, bool pLogging=true)
Template function for decoding an OpenSSL type from DER encoded QByteArray.
Definition ASN1TemplateUtil.h:114