AusweisApp2
UIPlugInAidl.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "UIPlugIn.h"
10 #include "UIPlugInJson.h"
11 
12 #include <QAtomicPointer>
13 #include <QMutex>
14 
15 namespace governikus
16 {
17 
19  : public UIPlugIn
20 {
21  Q_OBJECT
22  Q_PLUGIN_METADATA(IID "governikus.UIPlugIn" FILE "metadata.json")
23  Q_INTERFACES(governikus::UIPlugIn)
24 
25  private:
26  UIPlugInJson* mJson;
27  QSharedPointer<WorkflowContext> mContext;
28  QMutex mWorkflowIsActive;
29 
30  static QAtomicPointer<UIPlugInAidl> instance;
31  bool mInitializationSuccessfull;
32 
33  public:
34  UIPlugInAidl();
35  ~UIPlugInAidl() override = default;
36 
37  static UIPlugInAidl* getInstance(bool pBlock = true);
38  [[nodiscard]] bool isSuccessfullInitialized() const;
39  Q_INVOKABLE void onReceived(const QByteArray& pMessage);
41 
42  public Q_SLOTS:
43  void reset();
44  void startReaderManagerScans() const;
45 
46  private Q_SLOTS:
47  void doShutdown() override;
48  void onWorkflowStarted(QSharedPointer<WorkflowContext> pContext) override;
49  void onWorkflowFinished(QSharedPointer<WorkflowContext> pContext) override;
50 
51  void onToSend(const QByteArray& pMessage);
52 };
53 
54 } // namespace governikus
Definition: UIPlugInAidl.h:20
void startReaderManagerScans() const
Definition: UIPlugInAidl.cpp:128
void reset()
Definition: UIPlugInAidl.cpp:118
Q_INVOKABLE void onReceived(const QByteArray &pMessage)
Definition: UIPlugInAidl.cpp:100
~UIPlugInAidl() override=default
bool waitForWorkflowToFinish()
Definition: UIPlugInAidl.cpp:106
bool isSuccessfullInitialized() const
Definition: UIPlugInAidl.cpp:75
static UIPlugInAidl * getInstance(bool pBlock=true)
Definition: UIPlugInAidl.cpp:59
UIPlugInAidl()
Definition: UIPlugInAidl.cpp:34
Definition: UIPlugInJson.h:21
A simple template renderer.
Definition: ActivationContext.h:15