SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
ValueEventAdapter.hpp
Go to the documentation of this file.
1
11#pragma once
12#include <sdk/IModelEvents.hpp>
14#include <sdk/IViewEvents.hpp>
16#include <QPointer>
17#include <QVariantMap>
18
20{
34class ValueEventAdapter final : public QObject
35{
36 Q_OBJECT
37public:
42 explicit ValueEventAdapter(QObject *sourceLifetime, QObject *parent = nullptr);
44 ~ValueEventAdapter() override;
47 Q_INVOKABLE bool isSubscribed() const;
50 Q_INVOKABLE void disconnect();
54 Q_INVOKABLE QVariantMap stateSnapshot() const;
59 Q_INVOKABLE QVariantMap viewSnapshot(const QString &sessionId) const;
63 Q_INVOKABLE QVariantMap activitySnapshot() const;
64signals:
67 void stateOccurred(const QVariantMap &record);
70 void viewOccurred(const QVariantMap &record);
73 void activityOccurred(const QVariantMap &record);
74
75private:
79 bool canQuery(const OpenSWMM::Sdk::ScopedEventSubscription &subscription) const;
80 QPointer<QObject> mLifetime;
82 nullptr;
84 nullptr;
86 nullptr;
90 mActivitySubscription;
91};
92}
Versioned process attempts and scoped UI lifecycle observations.
Versioned, typed observations of GUI extension host state.
Authoritative model-session lifecycle, revision snapshots and project-save observations.
Versioned model, layer and attached-results observations and copied view metadata.
Owning primitive-value projection of managed session/view/activity observations.
Definition ValueEventAdapter.hpp:35
Q_INVOKABLE void disconnect()
Stop managed delivery and make all subsequent snapshots unavailable.
Definition ValueEventAdapter.cpp:293
Q_INVOKABLE QVariantMap viewSnapshot(const QString &sessionId) const
Copy one current IViewEvents view snapshot by its per-open lifetime identity.
Definition ValueEventAdapter.cpp:314
Q_INVOKABLE bool isSubscribed() const
Inspect complete managed service availability without querying source state.
Definition ValueEventAdapter.cpp:288
~ValueEventAdapter() override
Disconnect managed subscriptions before QObject teardown.
Definition ValueEventAdapter.cpp:279
void stateOccurred(const QVariantMap &record)
Deliver one copied ISessionEvents lifecycle/save observation as primitive values.
void activityOccurred(const QVariantMap &record)
Deliver one scoped IActivityEvents process/UI observation as primitive values.
void viewOccurred(const QVariantMap &record)
Deliver one copied IViewEvents model/layer/results observation as primitive values.
Q_INVOKABLE QVariantMap activitySnapshot() const
Copy current IActivityEvents metadata in the source host's existing scope.
Definition ValueEventAdapter.cpp:330
Q_INVOKABLE QVariantMap stateSnapshot() const
Copy current ISessionEvents metadata without creating or modifying native state.
Definition ValueEventAdapter.cpp:305
Frozen optional GUI-thread process and UI snapshot/observation capability.
Definition IActivityEvents.hpp:182
Frozen optional access to session snapshots and authoritative lifecycle observations.
Definition ISessionEvents.hpp:163
Frozen optional GUI-thread view metadata and deferred domain observation service.
Definition IViewEvents.hpp:146
Move-only owner that disconnects a Qt subscription when its scope ends.
Definition IModelEvents.hpp:194
Definition ValueEventAdapter.hpp:20
int parent
Definition planning.cpp:199