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
IActivityControls.hpp
Go to the documentation of this file.
1
11#pragma once
12#include <QObject>
13#include <QString>
14#include <QUuid>
15
17#define OPENSWMM_ACTIVITY_CONTROLS_IID "io.opensimulator.openswmm.IActivityControls/1.0"
18
19namespace OpenSWMM::Sdk
20{
21class IJob;
23enum class UiActivityCommandKind : quint32 {
25 SetDockOpen = 2,
27};
38{
39public:
41 virtual ~IActivityControls() = default;
50 virtual QUuid startRunAttempt(const QUuid &sessionId, quint64 loadGeneration,
51 QString *error = nullptr) = 0;
55 virtual QUuid jobOperationId(IJob *job) const = 0;
62 virtual bool cancelOperation(const QUuid &operationId, QString *error = nullptr) = 0;
68 virtual bool executeActivityUiCommand(const UiActivityCommand &command,
69 QString *error = nullptr) = 0;
70};
71}
#define OPENSWMM_ACTIVITY_CONTROLS_IID
Frozen Qt identity for typed process and scoped UI commands.
Definition IActivityControls.hpp:17
Frozen optional typed activity control capability.
Definition IActivityControls.hpp:38
virtual ~IActivityControls()=default
Destroy an implementation; consumers borrow the host-owned capability.
virtual QUuid startRunAttempt(const QUuid &sessionId, quint64 loadGeneration, QString *error=nullptr)=0
Start through the existing native run controller for an exact Ready model generation.
virtual bool cancelOperation(const QUuid &operationId, QString *error=nullptr)=0
Request cancellation of this window's exact run or this host's own job.
virtual bool executeActivityUiCommand(const UiActivityCommand &command, QString *error=nullptr)=0
Apply one validated scoped UI action through its existing native controller.
virtual QUuid jobOperationId(IJob *job) const =0
Resolve this host's retained borrowed job handle to its unique UUID.
Borrowed thread-safe handle for a job retained by its extension host.
Definition ExtensionHost.hpp:80
Public header-only ABI for independently compiled native GUI extensions.
Definition ExtensionHost.hpp:24
UiActivityCommandKind
Supported native UI routes with runtime identities rather than object names.
Definition IActivityControls.hpp:23
@ TriggerCommand
Trigger an enabled own action or approved built-in dialog command.
@ ActivateDocument
Focus a current mounted document in this main window.
@ SetDockOpen
Show/raise or hide a calling extension's own dock.
Owning explicit UI action; observers should defer their own state-changing work.
Definition IActivityControls.hpp:29
QUuid entityId
Current document/dock/command UUID from a copied snapshot.
Definition IActivityControls.hpp:32
QUuid origin
Optional caller token on synchronous resulting observations.
Definition IActivityControls.hpp:34
bool open
Desired logical dock state for SetDockOpen.
Definition IActivityControls.hpp:33
QUuid windowId
Exact current main-window lifetime.
Definition IActivityControls.hpp:31
UiActivityCommandKind kind
Native route.
Definition IActivityControls.hpp:30
double error
Definition terrainerrorfield.cpp:42