Table of Contents

Class ShellProgress

Namespace
Hi.MachiningProcs
Assembly
HiMech.dll

Append-only, thread-safe sink for session-level routine / lifecycle messages on the IMessage channel — one of the partitioned message homes.

This is partitioned by message kind, orthogonal to the other sinks: plain SimpleMessage notices that belong to the session as a whole (cache reset, file load / save progress, session start/done) live here; messages tied to a particular machining step live in StepDiagnosticProgress; NC-pipeline diagnostics live in NcDiagnosticProgress.

Append-only: session-routine messages are emitted sequentially, so report order already is execution order — there is no per-step anchor and no stable-index bookkeeping.

public class ShellProgress : IProgress<IMessage>
Inheritance
ShellProgress
Implements
Inherited Members
Extension Methods

Properties

Messages

All reported messages, in append (report) order. Thread-safe for concurrent appends.

public SynList<IMessage> Messages { get; }

Property Value

SynList<IMessage>

Methods

Clear()

Removes all messages (e.g. on session reset).

public void Clear()

Report(IMessage)

Reports a progress update.

public void Report(IMessage value)

Parameters

value IMessage

The value of the updated progress.

Events

Cleared

Raised after Clear() empties the collection.

public event Action Cleared

Event Type

Action

MessageAdded

Raised after a message has been appended. Carries the index it landed at in Messages and the appended message, so a consumer can place it and reach nearby items by indexing into Messages.

public event Action<int, IMessage> MessageAdded

Event Type

Action<int, IMessage>