AusweisApp2
DiagnosisController.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include <QDebug>
10 #include <QFutureWatcher>
11 #include <QScopedPointer>
12 
14 
15 namespace governikus
16 {
17 
19  : public QObject
20 {
21  Q_OBJECT
22 
23  struct PcscInfo
24  {
25  QString mPcscVersion;
26  QVector<DiagnosisContext::ComponentInfo> mPcscComponents;
27  QVector<DiagnosisContext::ComponentInfo> mPcscDrivers;
28  };
29 
30  private:
31  QSharedPointer<DiagnosisContext> mContext;
32  QFutureWatcher<PcscInfo> mWatcherPcscInfo;
33  bool mScanHasToBeStopped;
34 
35  void collectInterfaceInformation();
36 
37  static PcscInfo retrievePcscInfo();
38  static void getPcscInfo(QVector<DiagnosisContext::ComponentInfo>& pComponents,
39  QVector<DiagnosisContext::ComponentInfo>& pDrivers);
40 
41  public:
42  explicit DiagnosisController(const QSharedPointer<DiagnosisContext>& pContext, QObject* pParent = nullptr);
43  ~DiagnosisController() override;
44 
45  void run();
46 
47  private Q_SLOTS:
48  void onPcscInfoRetrieved();
49  void onReaderEvent();
50 
51 
52 };
53 
54 
55 } // namespace governikus
void run()
Definition: DiagnosisController.cpp:46
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
~DiagnosisController() override
Definition: DiagnosisController.cpp:31
DiagnosisController(const QSharedPointer< DiagnosisContext > &pContext, QObject *pParent=nullptr)
Definition: DiagnosisController.cpp:18
Definition: DiagnosisController.h:18