AusweisApp2
BluetoothReaderManagerPlugIn.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 
10 #include "CyberJackWaveDevice.h"
11 #include "ReaderManagerPlugIn.h"
12 
13 #include <QBluetoothDeviceDiscoveryAgent>
14 
15 
16 namespace governikus
17 {
18 
19 class BluetoothReader;
20 class BluetoothReaderManagerPlugInPrivate;
21 
22 
24  : public ReaderManagerPlugIn
25 {
26  Q_PLUGIN_METADATA(IID "governikus.ReaderManagerPlugIn" FILE "metadata.json")
28  Q_DECLARE_PRIVATE(BluetoothReaderManagerPlugIn)
29  Q_OBJECT
30 
31  private:
33 
34  QBluetoothDeviceDiscoveryAgent mDeviceDiscoveryAgent;
35  QMap<QString, QSharedPointer<CyberJackWaveDevice>> mInitializingDevices;
36  QMap<QString, BluetoothReader*> mReaders;
37  QMap<QString, int> mPendingConnections;
38  QStringList mReadersDiscoveredInCurrentScan;
39  int mTimerIdDiscoverPairedDevices;
40 
41  void onRemoveReader(const QString& pDeviceId);
42  void timerEvent(QTimerEvent* event) override;
43  void setScanRunning(bool pScanRunning);
44  void onScanRunningChanged();
45 
46  QVector<QString> deviceIdsForReaderName(const QString& pReaderName);
47 
48  private Q_SLOTS:
49  void onDeviceInitialized(const QBluetoothDeviceInfo& pInfo);
50  void onDeviceDisconnected(const QBluetoothDeviceInfo& pInfo);
51  void onDeviceDiscovered(const QBluetoothDeviceInfo& pInfo);
52  void onDeviceDiscoveryFinished();
53  void onDeviceDiscoveryError(QBluetoothDeviceDiscoveryAgent::Error pError);
54  void onDeviceDiscoveryCanceled();
55  void setBluetoothStatus(bool pEnabled);
56  void onCardRemoved(const QString& pReaderName);
57  void onReaderConnected(const QString& pReaderName);
58  void onReaderConnectionFailed(const QString& pReaderName);
59 
60  public:
62  void init() override;
63  QList<Reader*> getReaders() const override;
64 
65  virtual void startScan(bool pAutoConnect) override;
66  virtual void stopScan(const QString& pError = QString()) override;
67 };
68 
69 } // namespace governikus
governikus::BluetoothReader::fireReaderConnectionFailed
void fireReaderConnectionFailed(const QString &pReaderName)
BluetoothReader.h
governikus::ReaderManagerPlugIn::isScanRunning
bool isScanRunning() const
Definition: ReaderManagerPlugIn.h:74
CyberJackWaveDevice.h
governikus::BluetoothReaderManagerPlugInPrivate
Definition: BluetoothReaderManagerPlugIn_p.h:16
BluetoothReaderManagerPlugIn_p.h
governikus::ReaderInfo::isConnected
bool isConnected() const
Definition: ReaderInfo.h:119
governikus::CyberJackWaveDevice::fireDisconnected
void fireDisconnected(const QBluetoothDeviceInfo &pInfo)
governikus::GlobalStatus::Code::Workflow_Reader_Device_Scan_Error
@ Workflow_Reader_Device_Scan_Error
governikus::ReaderManagerPlugIn::fireReaderRemoved
void fireReaderRemoved(const QString &pReaderName)
Definition: moc_ReaderManagerPlugIn.cpp:230
governikus::CyberJackWaveDevice::fireInitialized
void fireInitialized(const QBluetoothDeviceInfo &pInfo)
governikus::BluetoothReader::fireReaderConnected
void fireReaderConnected(const QString &pReaderName)
governikus::Reader::fireCardRetryCounterChanged
void fireCardRetryCounterChanged(const QString &pReaderName)
Definition: moc_Reader.cpp:194
governikus::Reader::fireCardInserted
void fireCardInserted(const QString &pReaderName)
Definition: moc_Reader.cpp:180
governikus::Reader::getReaderInfo
const ReaderInfo & getReaderInfo() const
Definition: Reader.h:62
governikus::BluetoothReader::disconnectReader
void disconnectReader(const QString &pError=QString()) override
Definition: BluetoothReader.cpp:90
governikus::ReaderManagerPlugIn::startScan
virtual void startScan(bool pAutoConnect)
Definition: ReaderManagerPlugIn.cpp:19
governikus::GlobalStatus::Code::No_Error
@ No_Error
governikus::ReaderManagerPlugIn::fireReaderAdded
void fireReaderAdded(const QString &pReaderName)
Definition: moc_ReaderManagerPlugIn.cpp:223
governikus::Reader::getName
const QString & getName() const
Definition: Reader.h:56
GlobalStatus.h
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::ReaderManagerPlugIn::init
virtual void init()
Definition: ReaderManagerPlugIn.h:83
governikus::ReaderManagerPlugIn::fireReaderDeviceError
void fireReaderDeviceError(GlobalStatus::Code pError)
Definition: moc_ReaderManagerPlugIn.cpp:237
governikus::BluetoothReader
Definition: BluetoothReader.h:22
governikus::ReaderManagerPlugIn::setPlugInResponding
void setPlugInResponding(bool pResponding)
Definition: ReaderManagerPlugIn.h:47
governikus::ReaderManagerPlugIn::setPlugInEnabled
void setPlugInEnabled(bool pEnabled)
Definition: ReaderManagerPlugIn.h:31
BluetoothDeviceUtil::getDeviceId
static QString getDeviceId(const QBluetoothDeviceInfo &pInfo)
According to the Qt documentation:
Definition: BluetoothDeviceUtil.h:32
governikus::ReaderManagerPlugIn::fireCardInserted
void fireCardInserted(const QString &pReaderName)
Definition: moc_ReaderManagerPlugIn.cpp:244
governikus::BluetoothReaderManagerPlugIn::getReaders
QList< Reader * > getReaders() const override
Definition: BluetoothReaderManagerPlugIn.cpp:56
governikus::BluetoothReaderManagerPlugIn::BluetoothReaderManagerPlugIn
BluetoothReaderManagerPlugIn()
Definition: BluetoothReaderManagerPlugIn.cpp:28
governikus::Reader::fireCardRemoved
void fireCardRemoved(const QString &pReaderName)
Definition: moc_Reader.cpp:187
governikus::ReaderManagerPlugIn::stopScan
virtual void stopScan(const QString &pError=QString())
Definition: ReaderManagerPlugIn.cpp:29
governikus::Reader::fireReaderDeviceError
void fireReaderDeviceError(GlobalStatus::Code pErrorCode)
Definition: moc_Reader.cpp:208
governikus::BluetoothReaderManagerPlugIn::startScan
virtual void startScan(bool pAutoConnect) override
Definition: BluetoothReaderManagerPlugIn.cpp:68
BluetoothReaderManagerPlugIn.h
governikus::ReaderManagerPlugIn::fireCardRetryCounterChanged
void fireCardRetryCounterChanged(const QString &pReaderName)
Definition: moc_ReaderManagerPlugIn.cpp:258
governikus::ReaderManagerPlugIn::fireCardRemoved
void fireCardRemoved(const QString &pReaderName)
Definition: moc_ReaderManagerPlugIn.cpp:251
BluetoothDeviceUtil.h
BluetoothDebug.h
governikus::BluetoothReaderManagerPlugIn::init
void init() override
Definition: BluetoothReaderManagerPlugIn.cpp:44
governikus::BluetoothReaderManagerPlugIn
Definition: BluetoothReaderManagerPlugIn.h:25
ReaderManagerPlugIn.h
governikus::Reader
Definition: Reader.h:19
AndroidBluetoothAdapter.h
governikus::ReaderManagerPlugIn
Definition: ReaderManagerPlugIn.h:23
governikus::BluetoothReaderManagerPlugIn::stopScan
virtual void stopScan(const QString &pError=QString()) override
Definition: BluetoothReaderManagerPlugIn.cpp:105
governikus::BluetoothReader::connectReader
void connectReader() override
Definition: BluetoothReader.cpp:50
ScopeGuard.h