fix SoftNcRunner GM code normalization.

This commit is contained in:
2026-05-16 18:08:13 +08:00
parent e026da61b3
commit 8b285cc863
765 changed files with 18689 additions and 9785 deletions
@@ -219,38 +219,6 @@ and managing session state. Implements <a class="xref" href="https://learn.micro
<a id="Hi_MachiningProcs_MachiningSession_Data_" data-uid="Hi.MachiningProcs.MachiningSession.Data*"></a>
<h3 id="Hi_MachiningProcs_MachiningSession_Data" data-uid="Hi.MachiningProcs.MachiningSession.Data">
Data
</h3>
<div class="markdown level1 summary"><p>Gets or sets the data dictionary for the player session.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Dictionary&lt;object, object&gt; Data { 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.collections.generic.dictionary-2">Dictionary</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a>&gt;</dt>
<dd></dd>
</dl>
<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">
@@ -259,8 +227,19 @@ and managing session state. Implements <a class="xref" href="https://learn.micro
</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>
call within this session.</p>
<p>
<b>Legacy use only.</b> Read and incremented by
<code>HardNcRunner</code> and <code>CsvRunner</code>. <a class="xref" href="Hi.NcParsers.SoftNcRunner.html">SoftNcRunner</a>
no longer touches this field — it allocates file indices through
<a class="xref" href="Hi.NcParsers.Dependencys.SystemWired.FileIndexCounterDependency.html">FileIndexCounterDependency</a>,
which both the runner and inlined-subprogram syntaxes
(<a class="xref" href="Hi.NcParsers.EvaluationSyntaxs.SubProgramCallSyntax.html">SubProgramCallSyntax</a>) share so
every loaded file (top-level program plus every M98 / M198 inline,
including each <code>L</code> repetition) gets a distinct index.
Do not introduce new readers; the field will be removed once the
legacy runners retire.
</p>
</div>
<div class="markdown level1 conceptual"></div>
@@ -591,10 +570,10 @@ Takes effect during internal optimization process.</p>
</h3>
<div class="markdown level1 summary"><p>Tools already surfaced via &ldquo;MillingCutter.FluteMaterial not set&rdquo;
<div class="markdown level1 summary"><p>Tools already surfaced via &ldquo;<a class="xref" href="Hi.Milling.Cutters.MillingCutter.html#Hi_Milling_Cutters_MillingCutter_FluteMaterial">FluteMaterial</a> not set&rdquo;
warning. Keyed by <a class="xref" href="Hi.Machining.IMachiningTool.html">IMachiningTool</a> reference so the dedup is stable
across the two emission points: <a class="xref" href="Hi.MachiningProcs.MachiningActRunner.html#Hi_MachiningProcs_MachiningActRunner_ProcAct_Hi_Numerical_Acts_IAct_Hi_MachiningProcs_MachiningSession_Hi_MachiningSteps_IMachiningStepHost_Hi_NcParsers_IGetSentence_System_Threading_CancellationToken_">ProcAct(IAct, MachiningSession, IMachiningStepHost, IGetSentence, CancellationToken)</a> at each
IActTooling, and <code>BeginSession</code> for the tool that may already
across the two emission points: <a class="xref" href="Hi.MachiningProcs.MachiningActRunner.html#Hi_MachiningProcs_MachiningActRunner_ProcAct_Hi_Numerical_Acts_IAct_Hi_MachiningProcs_MachiningSession_Hi_MachiningSteps_IMachiningService_Hi_NcParsers_IGetSentence_System_Threading_CancellationToken_">ProcAct(IAct, MachiningSession, IMachiningService, IGetSentence, CancellationToken)</a> at each
<a class="xref" href="Hi.Numerical.Acts.IActTooling.html">IActTooling</a>, and <code>BeginSession</code> for the tool that may already
be equipped before the session begins (which has no tool ID to dedup with).
Reference equality is more precise than tool ID — the same tool object equipped
twice should warn once, regardless of how it was reached.</p>