19#define OPENSWMM_PROGRESS_IID "io.opensimulator.openswmm.IProgress/1.0"
56 const QString &stage) = 0;
66 const QString &detail = {}) = 0;
#define OPENSWMM_PROGRESS_IID
Frozen discovery identity for shared application progress.
Definition IProgress.hpp:19
Optional host-owned progress service; every method requires the GUI thread.
Definition IProgress.hpp:35
virtual QUuid beginProgress(const QString &title, QObject *context)=0
Begin an operation and immediately publish indeterminate shared progress.
virtual ~IProgress()=default
Destroy an implementation; plugins only borrow the host capability.
virtual bool updateProgress(const QUuid &operationId, double fraction, const QString &stage)=0
Update progress and its current human-readable stage.
virtual bool finishProgress(const QUuid &operationId, ProgressOutcome outcome, const QString &detail={})=0
Remove an operation from shared progress and record its terminal outcome once.
QPointer< QObject > context
Required provider lifetime guard.
Definition extensionattributes.cpp:31
const char * outcome
Definition meshenginesync.cpp:44
Public header-only ABI for independently compiled native GUI extensions.
Definition ExtensionHost.hpp:24
@ Succeeded
Settled successfully; a late cancel cannot change this outcome.
@ Cancelled
Settled as cancelled; no output rollback is implied.
@ Failed
Settled with an explicit worker/preparation error.
ProgressOutcome
Terminal classification for an extension-owned progress operation.
Definition IProgress.hpp:24
const char * title
Definition snowpackeditordialog.cpp:92