22#define OPENSWMM_ACTIVITY_EVENTS_IID "io.opensimulator.openswmm.IEventSource/4.0"
197 virtual QMetaObject::Connection
#define OPENSWMM_ACTIVITY_EVENTS_IID
Frozen Qt discovery identity for process/UI observations.
Definition IActivityEvents.hpp:22
Frozen optional GUI-thread process and UI snapshot/observation capability.
Definition IActivityEvents.hpp:182
virtual QMetaObject::Connection observeActivity(QObject *context, const ActivityEventFilter &filter, std::function< void(const ActivityEvent &)> callback)=0
Observe future queued scoped transitions with managed lifetime/thread guards.
virtual ~IActivityEvents()=default
Destroy an implementation; consumers borrow the host-owned capability.
virtual ActivitySnapshot activitySnapshot() const =0
Copy current retained process and scoped UI metadata without creating state.
QPointer< QObject > context
Required provider lifetime guard.
Definition extensionattributes.cpp:31
Public header-only ABI for independently compiled native GUI extensions.
Definition ExtensionHost.hpp:24
ActivityEventKind
Stable process transitions and UI invalidation reasons.
Definition IActivityEvents.hpp:134
@ CommandRemoved
Own/approved command registration retired.
@ ActiveDocumentChanged
Actual MDI focus changed, including utility documents/no document.
@ DockChanged
Calling extension's logical/exposed dock state changed.
@ CancellationRequested
A request won before settlement; outcome is still independent.
@ DockRemoved
Calling extension's dock registration retired.
@ OperationFinished
Exactly one immutable terminal outcome for an accepted attempt.
@ OperationRemoved
Retained metadata retired; the UUID is never reassigned.
@ OperationAccepted
Unique attempt accepted for preparation/scheduling.
@ DocumentRemoved
Historical document retirement; target no longer resolves.
@ DocumentChanged
Mounted document metadata changed.
@ OperationProgress
Coalesced latest progress; query current state for display.
@ OperationStarted
Native runner/worker entered its start path.
@ CommandChanged
Own/approved command metadata changed.
ProcessPhase
Accepted scheduling/preparation, worker availability and distinct terminal outcomes.
Definition IActivityEvents.hpp:32
@ Running
Native runner/worker has started its execution path.
@ Succeeded
Settled successfully; a late cancel cannot change this outcome.
@ Queued
Accepted preparation/scheduling, without claiming engine execution.
@ Cancelled
Settled as cancelled; no output rollback is implied.
@ Failed
Settled with an explicit worker/preparation error.
DocumentKind
Runtime classification of a mounted MDI document.
Definition IActivityEvents.hpp:78
@ Extension
Successfully mounted extension document, optionally model-bound.
@ Utility
Other native document, without inventing a model association.
@ Model
Native model document with a per-open session identity.
ProcessKind
Native shared simulation attempt or one calling extension's private worker.
Definition IActivityEvents.hpp:27
@ Run
Shared native simulation attempt.
@ Job
Private extension worker.
Registration-time event reason and optional process/session selection.
Definition IActivityEvents.hpp:165
bool accepts(const ActivityEvent &event) const
Match copied metadata without native queries.
Definition IActivityEvents.hpp:173
QUuid operationId
Null accepts all processes and UI changes.
Definition IActivityEvents.hpp:167
QList< ActivityEventKind > kinds
Empty accepts all scoped IActivityEvents observations.
Definition IActivityEvents.hpp:166
QUuid sessionId
Null accepts all; a specific session selects matching processes and excludes UI.
Definition IActivityEvents.hpp:169
Owning deferred process transition or scoped UI invalidation.
Definition IActivityEvents.hpp:154
ProcessState process
Process metadata, with null operationId for UI observations.
Definition IActivityEvents.hpp:158
QUuid entityId
Runtime document/dock/command identity; null for no active document.
Definition IActivityEvents.hpp:161
ActivityEventKind kind
Transition/invalidation reason.
Definition IActivityEvents.hpp:155
QUuid origin
Optional caller token for synchronous UI-command effects.
Definition IActivityEvents.hpp:162
quint64 sequence
Shared application publication sequence.
Definition IActivityEvents.hpp:157
QUuid windowId
Affected main-window scope.
Definition IActivityEvents.hpp:159
QUuid ownerId
Private host scope for jobs/UI projections, null for shared native runs.
Definition IActivityEvents.hpp:160
Pure copied retained process/UI metadata at the shared session/view/activity watermark.
Definition IActivityEvents.hpp:127
UiActivityState ui
Current scoped UI metadata.
Definition IActivityEvents.hpp:131
quint64 sequence
Shared application registry publication watermark.
Definition IActivityEvents.hpp:128
QList< ProcessState > processes
Shared native runs in this window and this host's private jobs.
Definition IActivityEvents.hpp:130
Calling extension's command or an approved existing built-in dialog command.
Definition IActivityEvents.hpp:103
bool enabled
Current native enabled state.
Definition IActivityEvents.hpp:108
QUuid commandId
Runtime QAction registration identity, replaced on recreation.
Definition IActivityEvents.hpp:104
bool checked
Current checked state.
Definition IActivityEvents.hpp:111
QString title
Current action caption.
Definition IActivityEvents.hpp:107
bool checkable
Native action supports a checked state.
Definition IActivityEvents.hpp:110
QStringList shortcuts
Copied portable shortcut strings.
Definition IActivityEvents.hpp:112
bool visible
Current native action visibility.
Definition IActivityEvents.hpp:109
QString id
Local extension command key or approved built-in dialog key.
Definition IActivityEvents.hpp:105
bool builtin
True for an approved existing host dialog command.
Definition IActivityEvents.hpp:106
Copied metadata for one calling extension's registered dock.
Definition IActivityEvents.hpp:93
QString id
Extension-local registered key.
Definition IActivityEvents.hpp:95
QUuid dockId
Runtime contribution identity, replaced on unregister/recreate.
Definition IActivityEvents.hpp:94
bool exposed
Last native visibility state; a tabified open dock may be unexposed.
Definition IActivityEvents.hpp:98
bool open
Logically open, independent of tab exposure.
Definition IActivityEvents.hpp:97
int area
Qt dock-area value, zero when not established.
Definition IActivityEvents.hpp:100
bool floating
Current native floating state.
Definition IActivityEvents.hpp:99
QString title
Current user-facing caption.
Definition IActivityEvents.hpp:96
Copied global MDI metadata, with actual focus separate from cached model context.
Definition IActivityEvents.hpp:84
DocumentKind kind
Native model, extension or utility.
Definition IActivityEvents.hpp:86
QString title
Copied current caption, without private persisted view state.
Definition IActivityEvents.hpp:89
bool active
Actual QMdiArea active subwindow.
Definition IActivityEvents.hpp:90
QUuid sessionId
Associated native model lifetime where explicitly known.
Definition IActivityEvents.hpp:87
QUuid documentId
Runtime MDI attachment UUID, retired on removal.
Definition IActivityEvents.hpp:85
QString ownerPluginId
Extension owner, otherwise empty.
Definition IActivityEvents.hpp:88
Owning metadata for one unique accepted attempt, independent of row IDs/titles.
Definition IActivityEvents.hpp:45
QString stage
Bounded latest progress description.
Definition IActivityEvents.hpp:60
QString ownerPluginId
Owning extension identity for jobs; empty for shared runs.
Definition IActivityEvents.hpp:51
QUuid ownerId
Private host lifetime for jobs; null for shared native runs.
Definition IActivityEvents.hpp:50
QString error
Bounded terminal diagnostic, empty on success.
Definition IActivityEvents.hpp:63
QString title
Human-readable label, not an identity.
Definition IActivityEvents.hpp:56
int rowId
Presentation-only Simulation Status row ID, reusable across attempts.
Definition IActivityEvents.hpp:55
QUuid operationId
Unique attempt UUID, never reused for another execution.
Definition IActivityEvents.hpp:46
int errorCode
Native error code where available; zero does not imply success.
Definition IActivityEvents.hpp:62
QUuid instanceId
Captured persistent model identity, possibly duplicated across sessions.
Definition IActivityEvents.hpp:53
double progress
Last finite normalized progress, preserved on failure/cancellation.
Definition IActivityEvents.hpp:59
QUuid sessionId
Captured native model lifetime for runs; null for unbound jobs.
Definition IActivityEvents.hpp:52
QDateTime acceptedAt
Accepted preparation/scheduling timestamp.
Definition IActivityEvents.hpp:64
QUuid windowId
Runtime main-window scope.
Definition IActivityEvents.hpp:49
ProcessPhase phase
Current/terminal outcome.
Definition IActivityEvents.hpp:48
bool isTerminal() const
Check whether this record has a settled outcome.
Definition IActivityEvents.hpp:70
QString inputPath
Captured run input path, empty for private jobs.
Definition IActivityEvents.hpp:57
QDateTime finishedAt
Terminal settlement timestamp.
Definition IActivityEvents.hpp:66
QDateTime startedAt
Native runner/worker start timestamp, invalid if never started.
Definition IActivityEvents.hpp:65
bool cancelRequested
A request, independently of terminal outcome.
Definition IActivityEvents.hpp:61
quint64 loadGeneration
Captured accepted model generation; zero for unbound jobs.
Definition IActivityEvents.hpp:54
quint64 revision
Monotonic per-operation observed-state revision.
Definition IActivityEvents.hpp:67
ProcessKind kind
Shared run or private extension worker.
Definition IActivityEvents.hpp:47
QString engineVersion
Captured native engine label.
Definition IActivityEvents.hpp:58
Copied UI metadata scoped to one main window and the calling extension's contributions.
Definition IActivityEvents.hpp:115
QList< CommandState > commands
Own commands plus approved built-in dialog commands.
Definition IActivityEvents.hpp:120
QList< DocumentState > documents
Global MDI attachment metadata; no private view JSON.
Definition IActivityEvents.hpp:118
QUuid windowId
Runtime main-window identity.
Definition IActivityEvents.hpp:116
QUuid activeDocumentId
Actual active MDI document, null when none is active.
Definition IActivityEvents.hpp:117
QList< DockState > docks
Calling extension's registered docks only.
Definition IActivityEvents.hpp:119