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  #if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
24 using EventFilterResultType = long;
25  #else
26 using EventFilterResultType = qintptr;
27  #endif
28  #include <QAbstractNativeEventFilter>
29 #endif
30 
31 #include <QSharedPointer>
32 #include <QVector>
33 
34 namespace governikus
35 {
36 
38  : public QObject
39 #ifdef Q_OS_WIN
40  , QAbstractNativeEventFilter
41 #endif
42 {
43  Q_OBJECT
44  friend class Env;
45 
46  private:
47 #ifdef Q_OS_MACOS
48  io_iterator_t mIteratorPublish;
49 
50  io_iterator_t mIteratorTerminated;
51 #endif
52 
53 #ifdef Q_OS_LINUX
54  DeviceListener* mDeviceListener;
55 #endif
56 
57  bool initNativeEvents();
58  bool terminateNativeEvents();
59 
60  protected:
62  ~ReaderDetector() override;
63 
64  public:
65  [[nodiscard]] virtual QVector<UsbId> attachedDevIds() const;
66 
67 #ifdef Q_OS_WIN
68  bool nativeEventFilter(const QByteArray& pEventType, void* pMessage, EventFilterResultType* pResult) override;
69 #endif
70 
75  [[nodiscard]] QVector<ReaderConfigurationInfo> getAttachedSupportedDevices() const;
76 
77  [[nodiscard]] ReaderConfigurationInfo getReaderConfigurationInfo(const QString& pReaderName) const;
78 
79  Q_SIGNALS:
81 };
82 
83 } // namespace governikus
Definition: DeviceListener.h:18
Definition: Env.h:44
Definition: ReaderConfigurationInfo.h:19
Definition: ReaderDetector.h:42
QVector< ReaderConfigurationInfo > getAttachedSupportedDevices() const
getAttachedDevices produce a list of supported devices that are attached to the system
Definition: ReaderDetector.cpp:34
ReaderConfigurationInfo getReaderConfigurationInfo(const QString &pReaderName) const
Definition: ReaderDetector.cpp:52
virtual QVector< UsbId > attachedDevIds() const
Definition: ReaderDetector_generic.cpp:23
ReaderDetector()
Definition: ReaderDetector.cpp:19
~ReaderDetector() override
Definition: ReaderDetector.cpp:28
A simple template renderer.
Definition: ActivationContext.h:15