38class ExtensionNetwork;
39class ExtensionStateRegistry;
40class ExtensionActivityUi;
45 const QHash<QString, QPointer<QAction>> &)>
50 std::function<void(
const QString &, QAction *)>
addAction;
53 std::function<QList<QVariantMap>()>
runs;
57 std::function<QUuid(
const QUuid &, quint64, QString *)>
59 std::function<bool(
const QUuid &, QString *)>
71 std::function<QMetaObject::Connection(QObject *, std::function<
void()>)>
73 std::function<void(
const QUuid &,
const QString &,
double,
const QString &)>
75 std::function<void(
const QUuid &)>
77 std::function<void(
const QString &,
const QString &)>
120 QList<OpenSWMM::Sdk::IProject *>
projects()
const override;
122 QList<OpenSWMM::Sdk::IModelInstance *>
instances()
const override;
130 bool updateProgress(
const QUuid &operationId,
double fraction,
const QString &stage)
override;
133 const QString &detail = {})
override;
138 QList<QVariantMap>
runs()
const override;
140 void cancel(
int id)
override;
142 const QString &category)
const override;
144 const QString &name,
const QString &variableKey)
override;
146 QStringList
ids()
const override;
147 bool open(
const QString &
id)
override;
148 bool isDark()
const override;
157 QMetaObject::Connection
159 std::function<
void(
const QString &,
const QVariantMap &)> callback)
override;
167 QMetaObject::Connection
182 QString *
error =
nullptr)
override;
186 QList<OpenSWMM::Sdk::TimeSeriesLayerInfo>
timeSeriesLayers(
const QUuid &sessionId)
const override;
194 std::function<QList<OpenSWMM::Sdk::TimeSeriesLayerInfo>(
const QUuid &)> layers);
196 QUuid
previewLayer(
const QUuid &sessionId, QList<qint64> *featureIds =
nullptr)
const override;
199 void setPreviewLayers(std::function<QUuid(
const QUuid &, QList<qint64> *)> lookup);
244 QString *
error =
nullptr)
override;
270 QString *
error =
nullptr)
override;
285 QString *
error =
nullptr)
override;
299 std::function<
void(
bool,
const QString &)> finished = {})
override;
301 QVariant
value(
const QString &key,
const QVariant &fallback = {})
const override;
302 void setValue(
const QString &key,
const QVariant &
value)
override;
303 void remove(
const QString &key)
override;
304 QStringList
keys()
const override;
305 void append(
const QString &level,
const QString &
text)
override;
306 void clear()
override;
313 std::function<
void(
const QString &,
int)> handler)
override;
326 void showDock(
const QString &
id)
override;
348 std::function<QList<qint64>(
const QUuid &,
const QUuid &,
int,
int)> selection);
353 void notify(
const QString &event,
const QVariantMap &data = {});
379 bool eventFilter(QObject *
object, QEvent *event)
override;
384 struct ProgressOperation {
389 double fraction = -1.;
390 quint64 revision = 0;
397 QUuid beginProgressOperation(
const QString &
title, QObject *
context,
const QUuid &operationId);
405 const QString &detail,
bool writeLog);
409 QPointer<QWidget> widget;
411 QString qualified(
const QString &
id)
const;
412 QString settingsKey(
const QString &key)
const;
413 void checkThread()
const;
416 QPointer<QMainWindow> mWindow;
417 QPointer<QMdiArea> mMdi;
418 QSettings *mSettings;
419 ExtensionUiBridge mBridge;
420 QHash<QString, QPointer<QAction>> mActions;
422 QHash<QString, QPointer<QDockWidget>> mDocks;
423 QHash<QString, OpenSWMM::Sdk::IDocumentViewFactory *> mFactories;
425 QHash<OpenSWMM::Sdk::IModelInstance *, QJsonArray> mPending;
426 QPointer<QDockWidget> mOutput;
427 QPointer<QPlainTextEdit> mText;
428 QPointer<QObject> mLocationContext;
429 std::function<void(
const QString &,
int)> mLocationHandler;
431 ExtensionNetwork *mNetwork =
nullptr;
432 std::vector<std::unique_ptr<Job>> mJobs;
433 QHash<QUuid, ProgressOperation> mProgress;
434 bool mStopping =
false;
435 QUuid mActivityOwnerId = QUuid::createUuid();
436 QUuid mActivityWindowId;
437 std::unique_ptr<ExtensionActivityUi> mActivityUi;
438 quint64 mEventSequence = 0;
439 QPointer<ExtensionStateRegistry> mStateRegistry;
440 QList<QMetaObject::Connection> mStateConnections;
443 std::function<QList<qint64>(
const QUuid &,
const QUuid &,
int,
int)> mViewSelection;
447 std::function<QList<OpenSWMM::Sdk::TimeSeriesLayerInfo>(
const QUuid &)> mTimeSeriesLayers;
448 std::function<QUuid(
const QUuid &, QList<qint64> *)> mPreviewLayer;
449 std::function<QList<OpenSWMM::Sdk::IProject *>()> mProjects;
455 bool cancelOwnJobOperation(
const QUuid &operationId, QString *
error);
Public host services available to independently built GUI extensions.
Versioned identity-checked process cancellation/start and scoped UI commands.
Versioned process attempts and scoped UI lifecycle observations.
Versioned, typed observations of GUI extension host state.
Public access to one loaded model, selection, snapshots and edit scopes.
SDK 1.8 capability resolving an extension's native preview layer for selection sync.
SDK 1.7 capability for shared application progress and operation logs.
Project data, coordinate conversion and spatial download-preview services.
Authoritative model-session lifecycle, revision snapshots and project-save observations.
SDK 1.6 capability for durable native observation-layer imports.
Versioned validated canvas and attached-results commands for extensions.
Versioned model, layer and attached-results observations and copied view metadata.
Definition ExtensionHost.hpp:96
Frozen optional typed activity control capability.
Definition IActivityControls.hpp:38
Frozen optional GUI-thread process and UI snapshot/observation capability.
Definition IActivityEvents.hpp:182
Host-owned plain-text output channel scoped to one extension and forwarded to native Logs.
Definition ExtensionHost.hpp:30
Argument-free built-in dialog commands, exposed through registered application actions.
Definition IApplicationServices.hpp:65
Definition IUiHost.hpp:44
Borrowed factory for MDI widgets with JSON project-state persistence.
Definition IUiHost.hpp:63
Worker-only progress, cancellation and GUI-continuation interface.
Definition ExtensionHost.hpp:62
Borrowed thread-safe handle for a job retained by its extension host.
Definition ExtensionHost.hpp:80
Optional, frozen interface for receiver-scoped typed GUI observations.
Definition IModelEvents.hpp:165
Definition IModelInstance.hpp:25
Borrowed GUI-thread network service used for catalogue previews and data downloads.
Definition INetworkPolicy.hpp:18
Access to existing time-series and profile plot panels.
Definition IApplicationServices.hpp:39
Borrowed factory for extension pages in the host Preferences dialog.
Definition IUiHost.hpp:89
Optional GUI-thread lookup of this extension's attached native preview layer.
Definition IPreviewLayers.hpp:26
Optional host-owned progress service; every method requires the GUI thread.
Definition IProgress.hpp:35
Definition IProject.hpp:19
Simulation Status facade supporting native and legacy worker runs.
Definition IApplicationServices.hpp:19
Frozen optional access to session snapshots and authoritative lifecycle observations.
Definition ISessionEvents.hpp:163
Definition ISettings.hpp:18
Optional host-owned import service; all public entry points use the GUI thread.
Definition ITimeSeriesLayers.hpp:53
Definition IUiHost.hpp:109
Frozen optional validated controller entry point for view changes.
Definition IViewControls.hpp:61
Frozen optional GUI-thread view metadata and deferred domain observation service.
Definition IViewEvents.hpp:146
GUI-thread session registry shared by every plugin host in the application.
Definition extensionstateregistry.h:32
Definition guiextensionhost.h:99
OpenSWMM::Sdk::ActivitySnapshot activitySnapshot() const override
Copy retained process and scoped UI state without native mutation.
Definition guiextensionhost.cpp:603
OpenSWMM::Sdk::IModelInstance * resolveSession(const QUuid &sessionId) const override
Resolve a ready session without creating a facade or emitting events.
Definition guiextensionhost.cpp:839
QUuid jobOperationId(OpenSWMM::Sdk::IJob *job) const override
Resolve an own retained IJob handle without dereferencing foreign pointers.
Definition guiextensionhost.cpp:1116
QStringList keys() const override
List this extension's stored settings without the host prefix.
Definition guiextensionhost.cpp:570
bool eventFilter(QObject *object, QEvent *event) override
Publish theme changes and activate output source locations.
Definition guiextensionhost.cpp:1024
QUuid activityOwnerId() const
Read the stable per-host lifetime used for private activity scope.
Definition guiextensionhost.h:288
QMetaObject::Connection observe(QObject *context, std::function< void(const QString &, const QVariantMap &)> callback) override
Connect a synchronous GUI-thread listener to this extension's scoped event stream.
Definition guiextensionhost.cpp:947
~GuiExtensionHost() override
Join workers, remove preferences/views/docks/tabs/actions, and release output widgets.
Definition guiextensionhost.cpp:340
OpenSWMM::Sdk::IModelInstance * activeInstance() const override
Resolve the active loaded model.
Definition guiextensionhost.cpp:932
void prepareShutdown() override
Cancel and join extension workers before plugin-owned resources are released.
Definition guiextensionhost.cpp:1142
QMetaObject::Connection observeState(QObject *context, const OpenSWMM::Sdk::StateEventFilter &filter, std::function< void(const OpenSWMM::Sdk::StateEvent &)> callback) override
Observe queued lifecycle/state changes after this registration's watermark.
Definition guiextensionhost.cpp:849
void unregisterDocumentViewFactory(const QString &kind) override
Close all views of this kind before releasing its factory.
Definition guiextensionhost.cpp:1444
void eventOccurred(const QString &event, const QVariantMap &data)
Notify observers on the GUI thread.
void statusMessage(const QString &text, int milliseconds=5000) override
Display transient status-bar text.
Definition guiextensionhost.cpp:1600
void postToMainThread(std::function< void()> callback) override
Queue a callback onto the GUI thread from any worker.
Definition guiextensionhost.cpp:1043
void setTimeSeriesControls(std::function< OpenSWMM::Sdk::IJob *(const OpenSWMM::Sdk::TimeSeriesImportRequest &, QObject *, std::function< void(const OpenSWMM::Sdk::TimeSeriesImportResult &)>, QString *)> importer, std::function< QList< OpenSWMM::Sdk::TimeSeriesLayerInfo >(const QUuid &)> layers)
Install private native dataset routes before extension initialization.
Definition guiextensionhost.cpp:816
void setJobCancellationHook(OpenSWMM::Sdk::IJob *job, std::function< void()> hook)
Install a host-internal publication cancellation hook on a retained job.
Definition guiextensionhost.cpp:1101
bool timeSeries(OpenSWMM::Sdk::IModelInstance *instance, const QString &category, const QString &name, const QString &variableKey) override
Add a result series to the shared time-series plot panel.
Definition guiextensionhost.cpp:518
OpenSWMM::Sdk::ISettings * settings() override
Access this extension user settings.
Definition guiextensionhost.h:125
void append(const QString &level, const QString &text) override
Append literal text to this extension's bounded Output and native timestamped Logs.
Definition guiextensionhost.cpp:1178
OpenSWMM::Sdk::IRunRegistry * runRegistry() override
Access Simulation Status enumeration/start/cancel operations.
Definition guiextensionhost.h:135
bool registerPreferencesPage(OpenSWMM::Sdk::IPreferencesPageFactory *factory) override
Add a preferences factory to the Extensions section of future Preferences dialogs.
Definition guiextensionhost.cpp:1571
OpenSWMM::Sdk::ViewSnapshot viewSnapshot(const QUuid &sessionId) const override
Copy tracked native view metadata without creating trackers or facades.
Definition guiextensionhost.cpp:701
bool isDark() const override
Inspect resolved palette contrast.
Definition guiextensionhost.cpp:937
OpenSWMM::Sdk::IProject * activeProject() const override
Resolve the active model project.
Definition guiextensionhost.cpp:920
void unregisterDockPanelFactory(const QString &id) override
Destroy a registered dock and its widget.
Definition guiextensionhost.cpp:1408
void setLocationHandler(QObject *context, std::function< void(const QString &, int)> handler) override
Register a guarded source-location callback for this output channel.
Definition guiextensionhost.cpp:1251
void appendLocation(const QString &level, const QString &text, const QString &path, int line) override
Append literal output associated with a source file location.
Definition guiextensionhost.cpp:1223
QUuid startRunAttempt(const QUuid &sessionId, quint64 loadGeneration, QString *error=nullptr) override
Start an exact Ready model generation via the native run controller.
Definition guiextensionhost.cpp:646
OpenSWMM::Sdk::IDialogs * dialogs() override
Access registered built-in dialog commands.
Definition guiextensionhost.h:137
QList< qint64 > selectedLayerFeatures(const QUuid &sessionId, const QUuid &layerSessionId, int offset=0, int limit=500) const override
Copy a bounded sorted page of selected vector FIDs.
Definition guiextensionhost.cpp:770
bool registerRibbonTab(const OpenSWMM::Sdk::RibbonTabSpec &tab) override
Register an independent, dynamically removable extension-owned ribbon tab.
Definition guiextensionhost.cpp:1299
void unregisterRibbonTab(const QString &id) override
Remove only this contribution and its host-owned toolbars.
Definition guiextensionhost.cpp:1315
bool executeActivityUiCommand(const OpenSWMM::Sdk::UiActivityCommand &command, QString *error=nullptr) override
Validate current runtime UI identities and use scoped native routes.
Definition guiextensionhost.cpp:689
QMetaObject::Connection observeViews(QObject *context, const OpenSWMM::Sdk::ViewEventFilter &filter, std::function< void(const OpenSWMM::Sdk::ViewEvent &)> callback) override
Observe future IViewEvents domain invalidations on the ordered shared dispatcher.
Definition guiextensionhost.cpp:708
OpenSWMM::Sdk::CompatibilityManifest manifest() const override
Inspect the running host build identity.
Definition guiextensionhost.h:117
void setViewControls(std::function< bool(const OpenSWMM::Sdk::ViewCommand &, QString *)> execute, std::function< QList< qint64 >(const QUuid &, const QUuid &, int, int)> selection)
Install private native view-controller routes during host setup.
Definition guiextensionhost.cpp:595
bool finishProgress(const QUuid &operationId, OpenSWMM::Sdk::ProgressOutcome outcome, const QString &detail={}) override
Remove an operation from shared progress and record its terminal outcome once.
Definition guiextensionhost.cpp:448
void restoreViews(OpenSWMM::Sdk::IModelInstance *instance, const QJsonArray &views)
Restore this plugin's known views and retain unavailable kinds as pending.
Definition guiextensionhost.cpp:1523
void showDock(const QString &id) override
Reveal and raise a registered dock.
Definition guiextensionhost.cpp:1415
void setPreviewLayers(std::function< QUuid(const QUuid &, QList< qint64 > *)> lookup)
Install the private native preview-layer lookup before extension initialization.
Definition guiextensionhost.cpp:834
QList< OpenSWMM::Sdk::TimeSeriesLayerInfo > timeSeriesLayers(const QUuid &sessionId) const override
Query bounded native observation-layer metadata for one Ready session.
Definition guiextensionhost.cpp:809
QList< QVariantMap > variables(OpenSWMM::Sdk::IModelInstance *instance, const QString &category) const override
Enumerate plottable variables from the model's active 1D results.
Definition guiextensionhost.cpp:512
OpenSWMM::Sdk::IUiHost * ui() override
Access namespaced widget/action registration.
Definition guiextensionhost.h:124
void clear() override
Clear only this extension's Output history; native Logs history is retained.
Definition guiextensionhost.cpp:1217
OpenSWMM::Sdk::IJob * runJob(const QString &title, std::function< void(OpenSWMM::Sdk::IJobContext &)> work, std::function< void(bool, const QString &)> finished={}) override
Start one worker, retaining its handle and progress UI until host cleanup.
Definition guiextensionhost.cpp:1053
void typedEventOccurred(const OpenSWMM::Sdk::Event &event)
Publish one canonical typed notification before its legacy projection.
QColor themeColor(QPalette::ColorRole role) const override
Read an active host palette token.
Definition guiextensionhost.cpp:941
OpenSWMM::Sdk::IPlotService * plots() override
Access the application's existing plot panels.
Definition guiextensionhost.h:136
void setSessionResolver(std::function< OpenSWMM::Sdk::IModelInstance *(const QUuid &)> resolver)
Install a lookup-only per-session facade resolver during host setup.
Definition guiextensionhost.cpp:586
OpenSWMM::Sdk::IJob * importTimeSeries(const OpenSWMM::Sdk::TimeSeriesImportRequest &request, QObject *context, std::function< void(const OpenSWMM::Sdk::TimeSeriesImportResult &)> finished, QString *error=nullptr) override
Start a guarded native observation import through the installed application bridge.
Definition guiextensionhost.cpp:786
void unregisterPreferencesPage(const QString &id) override
Remove a preferences factory and its live page before resource teardown.
Definition guiextensionhost.cpp:1583
QString pluginId() const override
Identify the extension owning this facade.
Definition guiextensionhost.h:118
QUuid activityWindowId() const
Read the main-window lifetime established at host construction.
Definition guiextensionhost.h:291
void unregisterAction(const QString &id) override
Remove a command without deleting its QAction.
Definition guiextensionhost.cpp:1288
bool registerDocumentViewFactory(OpenSWMM::Sdk::IDocumentViewFactory *factory) override
Register a borrowed document factory and materialize pending project views.
Definition guiextensionhost.cpp:1426
ExtensionStateRegistry * stateRegistry() const
Access the application registry used by this host's private model bridge.
Definition guiextensionhost.cpp:591
void setModelAccess(std::function< QList< OpenSWMM::Sdk::IProject * >()> projects, std::function< OpenSWMM::Sdk::IModelInstance *()> active)
Install GUI-thread model enumeration adapters before initialize() runs.
Definition guiextensionhost.cpp:580
bool executeViewCommand(const OpenSWMM::Sdk::ViewCommand &command, QString *error=nullptr) override
Apply a validated view controller command.
Definition guiextensionhost.cpp:741
QMetaObject::Connection subscribe(QObject *context, const OpenSWMM::Sdk::EventFilter &filter, std::function< void(const OpenSWMM::Sdk::Event &)> callback) override
Subscribe to typed SDK 1.2 notifications using a frozen optional interface.
Definition guiextensionhost.cpp:976
bool updateProgress(const QUuid &operationId, double fraction, const QString &stage) override
Update progress and its current human-readable stage.
Definition guiextensionhost.cpp:415
QWidget * openDocumentView(const QString &kind, OpenSWMM::Sdk::IModelInstance *instance) override
Create and show one host-owned MDI document.
Definition guiextensionhost.cpp:1462
QMetaObject::Connection observeActivity(QObject *context, const OpenSWMM::Sdk::ActivityEventFilter &filter, std::function< void(const OpenSWMM::Sdk::ActivityEvent &)> callback) override
Subscribe to future scoped activity metadata on the shared ordered dispatcher.
Definition guiextensionhost.cpp:610
QJsonArray saveViews(OpenSWMM::Sdk::IModelInstance *instance) const
Capture live and pending view state for one model.
Definition guiextensionhost.cpp:1550
OpenSWMM::Sdk::StateSnapshot stateSnapshot() const override
Copy live session metadata and its atomic registry watermark.
Definition guiextensionhost.cpp:780
void setValue(const QString &key, const QVariant &value) override
Persist a nonempty relative key and announce settingsChanged.
Definition guiextensionhost.cpp:552
bool registerAction(const QString &id, QAction *action) override
Register an extension command in the host command palette and shortcut context.
Definition guiextensionhost.cpp:1259
QStringList ids() const override
Enumerate currently registered built-in commands that open dialogs.
Definition guiextensionhost.cpp:529
void aboutToShutdown()
Release model contributions before the loader calls plugin shutdown.
QObject * lifetime() const override
Obtain a safe QObject context for actions and signal connections.
Definition guiextensionhost.h:119
QList< OpenSWMM::Sdk::IModelInstance * > instances() const override
Enumerate loaded models across projects.
Definition guiextensionhost.cpp:925
bool profile(OpenSWMM::Sdk::IModelInstance *instance, const QStringList &nodes) override
Open the standard profile panel along connected named nodes.
Definition guiextensionhost.cpp:524
QMetaObject::Connection observeBeforeSave(QObject *context, std::function< void(const OpenSWMM::Sdk::SaveRequest &)> callback) override
Collect plugin state synchronously before an accepted save writes it.
Definition guiextensionhost.cpp:884
QUuid beginProgress(const QString &title, QObject *context) override
Begin an operation and immediately publish indeterminate shared progress.
Definition guiextensionhost.cpp:377
OpenSWMM::Sdk::IConsole * console() override
Access this extension output channel.
Definition guiextensionhost.h:126
QList< OpenSWMM::Sdk::IProject * > projects() const override
Enumerate open projects.
Definition guiextensionhost.cpp:915
bool cancelOperation(const QUuid &operationId, QString *error=nullptr) override
Cancel an exact shared run or this host's own worker.
Definition guiextensionhost.cpp:665
bool isStopping() const
Report shutdown or wrong-thread access before private bridges read GUI state.
Definition guiextensionhost.cpp:1112
QWidget * mainWindow() const override
Obtain the main window for widget parenting.
Definition guiextensionhost.h:330
bool open(const QString &id) override
Trigger a built-in dialog in the current application context.
Definition guiextensionhost.cpp:534
QUuid previewLayer(const QUuid &sessionId, QList< qint64 > *featureIds=nullptr) const override
Identify this extension's native preview layer in one Ready session.
Definition guiextensionhost.cpp:825
OpenSWMM::Sdk::INetworkPolicy * network() override
Access the host offline/HTTPS destination policy and shared client.
Definition guiextensionhost.cpp:367
void notify(const QString &event, const QVariantMap &data={})
Deliver an owning metadata notification to extension observers.
Definition guiextensionhost.cpp:1004
void remove(const QString &key) override
Remove a relative key or subgroup within this extension's settings.
Definition guiextensionhost.cpp:561
bool registerDockPanelFactory(OpenSWMM::Sdk::IDockPanelFactory *factory) override
Instantiate and mount a dock with View-menu and layout persistence.
Definition guiextensionhost.cpp:1321
QList< QVariantMap > runs() const override
Copy current Simulation Status rows.
Definition guiextensionhost.cpp:491
QPointer< QObject > context
Required provider lifetime guard.
Definition extensionattributes.cpp:31
QMetaObject::Connection destroyed
Disconnect when replacing/removing this entry.
Definition extensionattributes.cpp:37
std::function< SWMMVisProjectWindow *()> active
Definition extensionmodelaccess.cpp:1521
QString path
Populated by the worker only after its own successful atomic creation.
Definition extensiontimeseriesaccess.cpp:32
int line
One-based source line.
Definition guiextensionhost.cpp:63
SWMM_FilePathRole role
Definition ioportabilitynormalizer.cpp:26
std::vector< int > start
size = pixels + 1
Definition mesh2dresultsexport.cpp:762
std::function< bool()> cancel
Definition meshassignmentsampling.cpp:32
const char * outcome
Definition meshenginesync.cpp:44
ProgressOutcome
Terminal classification for an extension-owned progress operation.
Definition IProgress.hpp:24
Definition aquiferprovider.h:24
int parent
Definition planning.cpp:199
TokenKind kind
Definition queryparser.cpp:53
QString text
Definition queryparser.cpp:54
QString message
Definition queryparser.cpp:230
double value
Definition rasterfluxintegration.cpp:27
std::uint64_t limit
Definition smsio.cpp:24
const char * title
Definition snowpackeditordialog.cpp:92
Registration-time event reason and optional process/session selection.
Definition IActivityEvents.hpp:165
Owning deferred process transition or scoped UI invalidation.
Definition IActivityEvents.hpp:154
Pure copied retained process/UI metadata at the shared session/view/activity watermark.
Definition IActivityEvents.hpp:127
Definition Version.hpp:24
Immutable-at-registration selection of event kinds and a model identity.
Definition IModelEvents.hpp:145
One typed observation published by an extension's host facade.
Definition IModelEvents.hpp:118
Value-described ribbon contribution suitable for native or future Python-authored UI.
Definition IUiHost.hpp:35
Synchronous, non-vetoing opportunity to collect state before a save writes.
Definition ISessionEvents.hpp:151
Copied selection of lifecycle kinds and optionally one open lifetime.
Definition ISessionEvents.hpp:133
Immutable transition record delivered later on the GUI thread.
Definition ISessionEvents.hpp:124
Atomic GUI-thread copy of live session metadata and its event watermark.
Definition ISessionEvents.hpp:76
Owning request referencing a completed local source-neutral import descriptor.
Definition ITimeSeriesLayers.hpp:26
Terminal import outcome delivered on the GUI thread to a guarded receiver.
Definition ITimeSeriesLayers.hpp:34
Owning explicit UI action; observers should defer their own state-changing work.
Definition IActivityControls.hpp:29
Owning bounded request for one native view-controller action.
Definition IViewControls.hpp:45
Registration-time reason, session and runtime-attachment selection.
Definition IViewEvents.hpp:129
Owning deferred observation identifying state to query again.
Definition IViewEvents.hpp:113
Pure copied current metadata at the shared registry watermark.
Definition IViewEvents.hpp:98
Application callbacks keeping the generic host independent of concrete GUI registries.
Definition guiextensionhost.h:42
std::function< QMetaObject::Connection(QObject *, std::function< void()>)> watchDialogActions
Observe native approved-command catalogue registration changes.
Definition guiextensionhost.h:72
std::function< bool(const QUuid &, QString *)> cancelRunAttempt
Cancel only the current matching native attempt UUID.
Definition guiextensionhost.h:60
std::function< bool(OpenSWMM::Sdk::IModelInstance *, const QString &, const QString &, const QString &)> timeSeries
Open a standard series panel.
Definition guiextensionhost.h:65
std::function< void(int)> cancelRun
Cancel one active normal/legacy run.
Definition guiextensionhost.h:56
std::function< bool(const QString &)> openDialog
Trigger a known enabled dialog action.
Definition guiextensionhost.h:69
std::function< void(const QUuid &, const QString &, double, const QString &)> progressChanged
Publish one operation with a plugin-qualified title; negative is busy.
Definition guiextensionhost.h:74
std::function< void(const QString &, QAction *)> addAction
Publish a qualified command to the application command registry.
Definition guiextensionhost.h:50
std::function< bool(OpenSWMM::Sdk::IModelInstance *, const QStringList &)> profile
Open a standard named-node profile.
Definition guiextensionhost.h:67
std::function< QList< QVariantMap >()> runs
Snapshot normal Simulation Status rows.
Definition guiextensionhost.h:53
std::function< QUuid(const QUuid &, quint64, QString *)> startRunAttempt
Start one exact model generation through the native controller.
Definition guiextensionhost.h:58
std::function< void(const QString &)> removeAction
Forget a qualified command while leaving its QAction ownership unchanged.
Definition guiextensionhost.h:52
std::function< void(const QString &, const QString &)> logMessage
Append severity and already plugin-prefixed text to native timestamped Logs.
Definition guiextensionhost.h:78
std::function< int(OpenSWMM::Sdk::IModelInstance *, QString *)> startRun
Run through the application controller.
Definition guiextensionhost.h:55
std::function< void(const QUuid &)> progressFinished
Remove exactly one native progress operation, including at shutdown.
Definition guiextensionhost.h:76
std::function< QAction *(const QString &)> dialogAction
Resolve approved dialog action metadata.
Definition guiextensionhost.h:70
std::function< void(const QString &)> removeTab
Remove a qualified tab and destroy its toolbar widgets.
Definition guiextensionhost.h:48
std::function< bool(const OpenSWMM::Sdk::RibbonTabSpec &, const QHash< QString, QPointer< QAction > > &)> addTab
Mount a qualified tab using the extension's registered local QAction map.
Definition guiextensionhost.h:46
std::function< QStringList()> dialogIds
Discover built-in dialog action IDs.
Definition guiextensionhost.h:68
std::function< QList< QVariantMap >(OpenSWMM::Sdk::IModelInstance *, const QString &)> plotVariables
Active-result descriptor catalogue.
Definition guiextensionhost.h:62
Host-owned job state shared between its worker and queued GUI continuations.
Definition guiextensionhost.cpp:71
double error
Definition terrainerrorfield.cpp:42
double offset
Definition timeseriesassignment.cpp:21
QVector< QPointF > nodes
Definition traceanalysislayer.cpp:163