fix SoftNcRunner GM code normalization.

This commit is contained in:
2026-05-06 13:21:19 +08:00
parent 0fe9497552
commit 2f57932000
1238 changed files with 69405 additions and 22511 deletions
@@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class MachiningSession | HiAPI-C# 2025 ">
<meta name="description" content="Represents a machining session that manages the execution and optimization of machining operations. Provides functionality for controlling the machining process, handling optimization options, and managing session state.">
<meta name="description" content="Represents a machining session that manages the execution and optimization of machining operations. Provides functionality for controlling the machining process, handling optimization options, and managing session state. Implements to clean up on session end.">
<link rel="icon" href="../img/HiAPI.favicon.ico">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
@@ -99,12 +99,13 @@ Class MachiningSession
<div class="markdown summary"><p>Represents a machining session that manages the execution and optimization of machining operations.
Provides functionality for controlling the machining process, handling optimization options,
and managing session state.</p>
and managing session state. Implements <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a> to clean up
<a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_SessionWriters">SessionWriters</a> on session end.</p>
</div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class MachiningSession</code></pre>
<pre><code class="lang-csharp hljs">public class MachiningSession : IDisposable</code></pre>
</div>
@@ -118,6 +119,12 @@ and managing session state.</p>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
@@ -244,6 +251,40 @@ and managing session state.</p>
<a id="Hi_MachiningProcs_MachiningSession_FileIndexOnRunCommand_" data-uid="Hi.MachiningProcs.MachiningSession.FileIndexOnRunCommand*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_FileIndexOnRunCommand" data-uid="Hi.MachiningProcs.MachiningSession.FileIndexOnRunCommand">
FileIndexOnRunCommand
</h3>
<div class="markdown level1 summary"><p>File index counter, auto-incremented per <a class="xref" href="Hi.Numerical.IControlRunner.html#Hi_Numerical_IControlRunner_RunControlLines_System_String_System_Collections_Generic_IEnumerable_System_String__Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_SessionProgress_System_Threading_CancellationToken_">RunControlLines(string, IEnumerable&lt;string&gt;, MachiningSession, SessionProgress, CancellationToken)</a>
call within this session. Replaces the previous per-runner counter so that file
indices are scoped to a session and reset naturally when a new session begins.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int FileIndexOnRunCommand { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_IsNcOptOptionListUpdatedByStep_" data-uid="Hi.MachiningProcs.MachiningSession.IsNcOptOptionListUpdatedByStep*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_IsNcOptOptionListUpdatedByStep" data-uid="Hi.MachiningProcs.MachiningSession.IsNcOptOptionListUpdatedByStep">
@@ -308,6 +349,40 @@ and managing session state.</p>
<a id="Hi_MachiningProcs_MachiningSession_NcRunnerSessionState_" data-uid="Hi.MachiningProcs.MachiningSession.NcRunnerSessionState*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_NcRunnerSessionState" data-uid="Hi.MachiningProcs.MachiningSession.NcRunnerSessionState">
NcRunnerSessionState
</h3>
<div class="markdown level1 summary"><p>Per-session NC pipeline state shared across <a class="xref" href="Hi.Numerical.IControlRunner.html#Hi_Numerical_IControlRunner_RunControlLines_System_String_System_Collections_Generic_IEnumerable_System_String__Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_SessionProgress_System_Threading_CancellationToken_">RunControlLines(string, IEnumerable&lt;string&gt;, MachiningSession, SessionProgress, CancellationToken)</a>
calls. Holds lazy-initialized <a class="xref" href="Hi.NcParsers.NcDiagnosticProgress.html">NcDiagnosticProgress</a> and the per-layer
<a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html">LazyLinkedList&lt;T&gt;</a> chain used for cross-file modal continuity.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public NcRunnerSessionState NcRunnerSessionState { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.MachiningProcs.NcRunnerSessionState.html">NcRunnerSessionState</a></dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_PacePlayee_" data-uid="Hi.MachiningProcs.MachiningSession.PacePlayee*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_PacePlayee" data-uid="Hi.MachiningProcs.MachiningSession.PacePlayee">
@@ -340,6 +415,109 @@ and managing session state.</p>
<a id="Hi_MachiningProcs_MachiningSession_PostBlockScripts_" data-uid="Hi.MachiningProcs.MachiningSession.PostBlockScripts*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_PostBlockScripts" data-uid="Hi.MachiningProcs.MachiningSession.PostBlockScripts">
PostBlockScripts
</h3>
<div class="markdown level1 summary"><p>Per-line scripts injected externally (without modifying NC files).
Key: <a class="xref" href="Hi.Common.FileLines.FileLineIndex.html">FileLineIndex</a> of the NC block.
Value: C# script text to execute <b>after</b> the NC block.
Consumed by <a class="xref" href="Hi.NcParsers.Semantics.CsScriptEndSemantic.html">CsScriptEndSemantic</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Dictionary&lt;FileLineIndex, string&gt; PostBlockScripts { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2">Dictionary</a>&lt;<a class="xref" href="Hi.Common.FileLines.FileLineIndex.html">FileLineIndex</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_PreBlockScripts_" data-uid="Hi.MachiningProcs.MachiningSession.PreBlockScripts*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_PreBlockScripts" data-uid="Hi.MachiningProcs.MachiningSession.PreBlockScripts">
PreBlockScripts
</h3>
<div class="markdown level1 summary"><p>Per-line scripts injected externally (without modifying NC files).
Key: <a class="xref" href="Hi.Common.FileLines.FileLineIndex.html">FileLineIndex</a> of the NC block.
Value: C# script text to execute <b>before</b> the NC block.
Consumed by <a class="xref" href="Hi.NcParsers.Semantics.CsScriptBeginSemantic.html">CsScriptBeginSemantic</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Dictionary&lt;FileLineIndex, string&gt; PreBlockScripts { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2">Dictionary</a>&lt;<a class="xref" href="Hi.Common.FileLines.FileLineIndex.html">FileLineIndex</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_SessionWriters_" data-uid="Hi.MachiningProcs.MachiningSession.SessionWriters*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_SessionWriters" data-uid="Hi.MachiningProcs.MachiningSession.SessionWriters">
SessionWriters
</h3>
<div class="markdown level1 summary"><p>StreamWriters registered during the session (e.g. by diagnostic output methods).
Key: relative output file path. Disposed automatically when the session ends.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Dictionary&lt;string, StreamWriter&gt; SessionWriters { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2">Dictionary</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.io.streamwriter">StreamWriter</a>&gt;</dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_StepIndexToNcOptOptionSortedList_" data-uid="Hi.MachiningProcs.MachiningSession.StepIndexToNcOptOptionSortedList*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_StepIndexToNcOptOptionSortedList" data-uid="Hi.MachiningProcs.MachiningSession.StepIndexToNcOptOptionSortedList">
@@ -437,6 +615,33 @@ Takes effect during internal optimization process.</p>
<a id="Hi_MachiningProcs_MachiningSession_Dispose_" data-uid="Hi.MachiningProcs.MachiningSession.Dispose*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_Dispose" data-uid="Hi.MachiningProcs.MachiningSession.Dispose">
Dispose()
</h3>
<div class="markdown level1 summary"><p>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Dispose()</code></pre>
</div>
<a id="Hi_MachiningProcs_MachiningSession_EndPreserve_" data-uid="Hi.MachiningProcs.MachiningSession.EndPreserve*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_EndPreserve" data-uid="Hi.MachiningProcs.MachiningSession.EndPreserve">
@@ -491,6 +696,136 @@ Takes effect during internal optimization process.</p>
<a id="Hi_MachiningProcs_MachiningSession_RunMachiningStepBuilt_" data-uid="Hi.MachiningProcs.MachiningSession.RunMachiningStepBuilt*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_RunMachiningStepBuilt_Hi_MachiningSteps_MachiningStep_Hi_MachiningSteps_MachiningStep_" data-uid="Hi.MachiningProcs.MachiningSession.RunMachiningStepBuilt(Hi.MachiningSteps.MachiningStep,Hi.MachiningSteps.MachiningStep)">
RunMachiningStepBuilt(MachiningStep, MachiningStep)
</h3>
<div class="markdown level1 summary"><p>Internal use only. Invokes <a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_MachiningStepBuilt">MachiningStepBuilt</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void RunMachiningStepBuilt(MachiningStep preStep, MachiningStep curStep)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>preStep</code> <a class="xref" href="Hi.MachiningSteps.MachiningStep.html">MachiningStep</a></dt>
<dd></dd>
<dt><code>curStep</code> <a class="xref" href="Hi.MachiningSteps.MachiningStep.html">MachiningStep</a></dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_RunMachiningStepSelected_" data-uid="Hi.MachiningProcs.MachiningSession.RunMachiningStepSelected*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_RunMachiningStepSelected_Hi_MachiningSteps_MachiningStep_" data-uid="Hi.MachiningProcs.MachiningSession.RunMachiningStepSelected(Hi.MachiningSteps.MachiningStep)">
RunMachiningStepSelected(MachiningStep)
</h3>
<div class="markdown level1 summary"><p>Internal use only. Invokes <a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_MachiningStepSelected">MachiningStepSelected</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void RunMachiningStepSelected(MachiningStep machiningStep)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>machiningStep</code> <a class="xref" href="Hi.MachiningSteps.MachiningStep.html">MachiningStep</a></dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_RunSourcedActEntry_" data-uid="Hi.MachiningProcs.MachiningSession.RunSourcedActEntry*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_RunSourcedActEntry_Hi_Numerical_SourcedActEntry_" data-uid="Hi.MachiningProcs.MachiningSession.RunSourcedActEntry(Hi.Numerical.SourcedActEntry)">
RunSourcedActEntry(SourcedActEntry)
</h3>
<div class="markdown level1 summary"><p>Internal use only. Invokes <a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_SourcedActEntry">SourcedActEntry</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void RunSourcedActEntry(SourcedActEntry entry)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>entry</code> <a class="xref" href="Hi.Numerical.SourcedActEntry.html">SourcedActEntry</a></dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_RunSyntaxPieceRan_" data-uid="Hi.MachiningProcs.MachiningSession.RunSyntaxPieceRan*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_RunSyntaxPieceRan_Hi_NcParsers_Syntaxs_SyntaxPiece_" data-uid="Hi.MachiningProcs.MachiningSession.RunSyntaxPieceRan(Hi.NcParsers.Syntaxs.SyntaxPiece)">
RunSyntaxPieceRan(SyntaxPiece)
</h3>
<div class="markdown level1 summary"><p>Internal use only. Invokes <a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_SyntaxPieceRan">SyntaxPieceRan</a>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void RunSyntaxPieceRan(SyntaxPiece syntaxPiece)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>syntaxPiece</code> <a class="xref" href="Hi.NcParsers.Syntaxs.SyntaxPiece.html">SyntaxPiece</a></dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningSession_UpdateNcOptOptionMapIfNeeded_" data-uid="Hi.MachiningProcs.MachiningSession.UpdateNcOptOptionMapIfNeeded*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_UpdateNcOptOptionMapIfNeeded_System_Int32_" data-uid="Hi.MachiningProcs.MachiningSession.UpdateNcOptOptionMapIfNeeded(System.Int32)">
@@ -536,6 +871,68 @@ Internal use only.</p>
<h3 id="Hi_MachiningProcs_MachiningSession_MachiningStepBuilt" data-uid="Hi.MachiningProcs.MachiningSession.MachiningStepBuilt">
MachiningStepBuilt
</h3>
<div class="markdown level1 summary"><p>Event triggered when a machining step is built.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event MachiningActRunner.MachiningStepBuiltDelegate MachiningStepBuilt</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.MachiningProcs.MachiningActRunner.html">MachiningActRunner</a>.<a class="xref" href="Hi.MachiningProcs.MachiningActRunner.MachiningStepBuiltDelegate.html">MachiningStepBuiltDelegate</a></dt>
<dd></dd>
</dl>
<h3 id="Hi_MachiningProcs_MachiningSession_MachiningStepSelected" data-uid="Hi.MachiningProcs.MachiningSession.MachiningStepSelected">
MachiningStepSelected
</h3>
<div class="markdown level1 summary"><p>Event triggered when a machining step is selected.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;MachiningStep&gt; MachiningStepSelected</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="Hi.MachiningSteps.MachiningStep.html">MachiningStep</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="Hi_MachiningProcs_MachiningSession_OnCurrentLineEnd" data-uid="Hi.MachiningProcs.MachiningSession.OnCurrentLineEnd">
OnCurrentLineEnd
@@ -568,6 +965,68 @@ The event buffer is cleared on every line change.</p>
<h3 id="Hi_MachiningProcs_MachiningSession_SourcedActEntry" data-uid="Hi.MachiningProcs.MachiningSession.SourcedActEntry">
SourcedActEntry
</h3>
<div class="markdown level1 summary"><p>Event triggered for each <a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_SourcedActEntry">SourcedActEntry</a> produced during NC/CSV execution.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;SourcedActEntry&gt; SourcedActEntry</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="Hi.Numerical.SourcedActEntry.html">SourcedActEntry</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="Hi_MachiningProcs_MachiningSession_SyntaxPieceRan" data-uid="Hi.MachiningProcs.MachiningSession.SyntaxPieceRan">
SyntaxPieceRan
</h3>
<div class="markdown level1 summary"><p>Event triggered when a syntax piece has been executed.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;SyntaxPiece&gt; SyntaxPieceRan</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="Hi.NcParsers.Syntaxs.SyntaxPiece.html">SyntaxPiece</a>&gt;</dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">