AusweisApp2
ReaderDetector.h
gehe zur Dokumentation dieser Datei
1 
8 #pragma once
9 
10 #include "Env.h"
11 #include "ReaderConfiguration.h"
12 #include "UsbId.h"
13 
14 #ifdef Q_OS_LINUX
15 #include "DeviceListener.h"
16 #endif
17 
18 #ifdef Q_OS_MACOS
19 #include <IOKit/IOKitLib.h>
20 #endif
21 
22 #ifdef Q_OS_WIN
23 #include <QAbstractNativeEventFilter>
24 #endif
25 
26 #include <QSharedPointer>
27 #include <QVector>
28 
29 namespace governikus
30 {
31 
33  : public QObject
34  #ifdef Q_OS_WIN
35  , QAbstractNativeEventFilter
36  #endif
37 {
38  Q_OBJECT
39  friend class Env;
40 
41  private:
42  #ifdef Q_OS_MACOS
43  io_iterator_t mIteratorPublish;
44 
45  io_iterator_t mIteratorTerminated;
46  #endif
47 
48  #ifdef Q_OS_LINUX
49  DeviceListener* mDeviceListener;
50  #endif
51 
52  bool initNativeEvents();
53  bool terminateNativeEvents();
54 
55  protected:
57  ~ReaderDetector() override;
58 
59  public:
60  [[nodiscard]] virtual QVector<UsbId> attachedDevIds() const;
61 
62  #ifdef Q_OS_WIN
63  bool nativeEventFilter(const QByteArray& pEventType, void* pMessage, long* pResult) override;
64  #endif
65 
70  [[nodiscard]] QVector<ReaderConfigurationInfo> getAttachedSupportedDevices() const;
71 
72  [[nodiscard]] ReaderConfigurationInfo getReaderConfigurationInfo(const QString& pReaderName) const;
73 
74  Q_SIGNALS:
76 };
77 
78 } // namespace governikus
governikus::ReaderDetector::attachedDevIds
virtual QVector< UsbId > attachedDevIds() const
Definition: ReaderDetector_generic.cpp:23
governikus::ReaderDetector::getReaderConfigurationInfo
ReaderConfigurationInfo getReaderConfigurationInfo(const QString &pReaderName) const
Definition: ReaderDetector.cpp:52
ReaderConfiguration.h
governikus::ReaderConfigurationInfo
Definition: ReaderConfigurationInfo.h:19
governikus::Env
Definition: Env.h:44
governikus::DeviceListener
Definition: DeviceListener.h:18
governikus::ReaderDetector
Definition: ReaderDetector.h:37
UsbId.h
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::ReaderDetector::ReaderDetector
ReaderDetector()
Definition: ReaderDetector.cpp:19
governikus::ReaderDetector::~ReaderDetector
~ReaderDetector() override
Definition: ReaderDetector.cpp:28
Env.h
ReaderDetector.h
governikus::ReaderDetector::getAttachedSupportedDevices
QVector< ReaderConfigurationInfo > getAttachedSupportedDevices() const
getAttachedDevices produce a list of supported devices that are attached to the system
Definition: ReaderDetector.cpp:34
governikus::ReaderDetector::fireReaderChangeDetected
void fireReaderChangeDetected()
DeviceListener.h