deploy webservice static-file routing for docsite folder URLs, per-instance step-cache db, and constant-height panel title bars.

This commit is contained in:
2026-08-27 14:51:37 +08:00
parent 1fc510af5e
commit 2a98ae7556
1468 changed files with 182837 additions and 18888 deletions
@@ -186,8 +186,8 @@ Class MachiningActRunner
<a id="Hi_MachiningProcs_MachiningActRunner__ctor_" data-uid="Hi.MachiningProcs.MachiningActRunner.#ctor*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner__ctor_Hi_MachiningProcs_SessionProgress_System_Action_System_Collections_Generic_IEnumerable_Hi_MillingSteps_MillingStepLuggage___System_Func_Hi_Machining_MachiningToolHouse__System_Func_Hi_Machining_MachiningEquipmentUtils_MachiningEquipment__System_Func_Hi_NcMech_Workpieces_WorkpieceService__System_Action_" data-uid="Hi.MachiningProcs.MachiningActRunner.#ctor(Hi.MachiningProcs.SessionProgress,System.Action{System.Collections.Generic.IEnumerable{Hi.MillingSteps.MillingStepLuggage}},System.Func{Hi.Machining.MachiningToolHouse},System.Func{Hi.Machining.MachiningEquipmentUtils.MachiningEquipment},System.Func{Hi.NcMech.Workpieces.WorkpieceService},System.Action)">
MachiningActRunner(SessionProgress, Action&lt;IEnumerable&lt;MillingStepLuggage&gt;&gt;, Func&lt;MachiningToolHouse&gt;, Func&lt;MachiningEquipment&gt;, Func&lt;WorkpieceService&gt;, Action)
<h3 id="Hi_MachiningProcs_MachiningActRunner__ctor_System_Action_System_Exception__System_Action_System_Collections_Generic_IEnumerable_Hi_MillingSteps_MillingStepLuggage___System_Func_Hi_Machining_MachiningToolHouse__System_Func_Hi_Machining_MachiningEquipmentUtils_MachiningEquipment__System_Func_Hi_NcMech_Workpieces_WorkpieceService__System_Action_" data-uid="Hi.MachiningProcs.MachiningActRunner.#ctor(System.Action{System.Exception},System.Action{System.Collections.Generic.IEnumerable{Hi.MillingSteps.MillingStepLuggage}},System.Func{Hi.Machining.MachiningToolHouse},System.Func{Hi.Machining.MachiningEquipmentUtils.MachiningEquipment},System.Func{Hi.NcMech.Workpieces.WorkpieceService},System.Action)">
MachiningActRunner(Action&lt;Exception&gt;, Action&lt;IEnumerable&lt;MillingStepLuggage&gt;&gt;, Func&lt;MachiningToolHouse&gt;, Func&lt;MachiningEquipment&gt;, Func&lt;WorkpieceService&gt;, Action)
</h3>
@@ -196,13 +196,16 @@ Class MachiningActRunner
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public MachiningActRunner(SessionProgress sessionProgress, Action&lt;IEnumerable&lt;MillingStepLuggage&gt;&gt; stepStorageWriter, Func&lt;MachiningToolHouse&gt; machiningToolHouseGetter, Func&lt;MachiningEquipment&gt; machiningEquipmentGetter, Func&lt;WorkpieceService&gt; workpieceServiceGetter, Action resetMillingStepLuggageDbAction)</code></pre>
<pre><code class="lang-csharp hljs">public MachiningActRunner(Action&lt;Exception&gt; reportException, Action&lt;IEnumerable&lt;MillingStepLuggage&gt;&gt; stepStorageWriter, Func&lt;MachiningToolHouse&gt; machiningToolHouseGetter, Func&lt;MachiningEquipment&gt; machiningEquipmentGetter, Func&lt;WorkpieceService&gt; workpieceServiceGetter, Action resetMillingStepLuggageDbAction)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>sessionProgress</code> <a class="xref" href="Hi.MachiningProcs.SessionProgress.html">SessionProgress</a></dt>
<dd><p>The milling message host.</p>
<dt><code>reportException</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.exception">Exception</a>&gt;</dt>
<dd><p>Error sink for the runner's background
infrastructure tasks (bulk writer flush, attachment-memory loose runner)
which run outside any single call. Request-scoped progress is passed by
method argument, not held here.</p>
</dd>
<dt><code>stepStorageWriter</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable</a>&lt;<a class="xref" href="Hi.MillingSteps.MillingStepLuggage.html">MillingStepLuggage</a>&gt;&gt;</dt>
<dd><p>The action to write milling step luggages to storage.</p>
@@ -562,19 +565,24 @@ This is for internal use only.</p>
<a id="Hi_MachiningProcs_MachiningActRunner_SessionProgress_" data-uid="Hi.MachiningProcs.MachiningActRunner.SessionProgress*"></a>
<a id="Hi_MachiningProcs_MachiningActRunner_ShellThreadStepIndex_" data-uid="Hi.MachiningProcs.MachiningActRunner.ShellThreadStepIndex*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_SessionProgress" data-uid="Hi.MachiningProcs.MachiningActRunner.SessionProgress">
SessionProgress
<h3 id="Hi_MachiningProcs_MachiningActRunner_ShellThreadStepIndex" data-uid="Hi.MachiningProcs.MachiningActRunner.ShellThreadStepIndex">
ShellThreadStepIndex
</h3>
<div class="markdown level1 summary"><p>Gets or sets the milling message host.</p>
<div class="markdown level1 summary"><p>The motion-step index currently managed on the shell session main thread — the index the
next <a class="xref" href="Hi.CutterLocations.ClStrips.ClStripPos.html">ClStripPos</a> will receive, read straight from
<a class="xref" href="Hi.CutterLocations.ClStrips.ClStrip.html#Hi_CutterLocations_ClStrips_ClStrip_StripPosesCount">StripPosesCount</a> (the strip is the single source of truth). Decoupled
from the parallel-physics <code>StepTaskBundle.StepIndex</code>, which tracks a different
(emit-thread) progress and may diverge. Use this to anchor a <a class="xref" href="Hi.MachiningProcs.StepDiagnostic.html">StepDiagnostic</a>
to its motion step.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public SessionProgress SessionProgress { get; set; }</code></pre>
<pre><code class="lang-csharp hljs">public int ShellThreadStepIndex { get; }</code></pre>
</div>
@@ -583,7 +591,7 @@ This is for internal use only.</p>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="Hi.MachiningProcs.SessionProgress.html">SessionProgress</a></dt>
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
@@ -750,8 +758,8 @@ This property is provided as a member value getter and should not be modified.</
<a id="Hi_MachiningProcs_MachiningActRunner_ExpandToActMcStep_" data-uid="Hi.MachiningProcs.MachiningActRunner.ExpandToActMcStep*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_ExpandToActMcStep_Hi_Numerical_Acts_IAct_" data-uid="Hi.MachiningProcs.MachiningActRunner.ExpandToActMcStep(Hi.Numerical.Acts.IAct)">
ExpandToActMcStep(IAct)
<h3 id="Hi_MachiningProcs_MachiningActRunner_ExpandToActMcStep_Hi_Numerical_Acts_IAct_Hi_MachiningProcs_StepDiagnosticProgress_" data-uid="Hi.MachiningProcs.MachiningActRunner.ExpandToActMcStep(Hi.Numerical.Acts.IAct,Hi.MachiningProcs.StepDiagnosticProgress)">
ExpandToActMcStep(IAct, StepDiagnosticProgress)
</h3>
@@ -760,13 +768,16 @@ This property is provided as a member value getter and should not be modified.</
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public IEnumerable&lt;IAct&gt; ExpandToActMcStep(IAct act)</code></pre>
<pre><code class="lang-csharp hljs">public IEnumerable&lt;IAct&gt; ExpandToActMcStep(IAct act, StepDiagnosticProgress stepDiagnosticProgress)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>act</code> <a class="xref" href="Hi.Numerical.Acts.IAct.html">IAct</a></dt>
<dd><p>The act to expand.</p>
</dd>
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd><p>Progress sink for cutter-location strip / per-step updates.</p>
</dd>
</dl>
@@ -822,8 +833,8 @@ This property is provided as a member value getter and should not be modified.</
<a id="Hi_MachiningProcs_MachiningActRunner_ProcAct_" data-uid="Hi.MachiningProcs.MachiningActRunner.ProcAct*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_ProcAct_Hi_Numerical_Acts_IAct_Hi_MachiningProcs_MachiningSession_Hi_MachiningSteps_IMachiningService_Hi_NcParsers_IGetSentence_System_Threading_CancellationToken_" data-uid="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)
<h3 id="Hi_MachiningProcs_MachiningActRunner_ProcAct_Hi_Numerical_Acts_IAct_Hi_MachiningProcs_MachiningSession_Hi_MachiningSteps_IMachiningService_Hi_NcParsers_ISentenceCarrier_System_Threading_CancellationToken_Hi_MachiningProcs_StepDiagnosticProgress_" data-uid="Hi.MachiningProcs.MachiningActRunner.ProcAct(Hi.Numerical.Acts.IAct,Hi.MachiningProcs.MachiningSession,Hi.MachiningSteps.IMachiningService,Hi.NcParsers.ISentenceCarrier,System.Threading.CancellationToken,Hi.MachiningProcs.StepDiagnosticProgress)">
ProcAct(IAct, MachiningSession, IMachiningService, ISentenceCarrier, CancellationToken, StepDiagnosticProgress)
</h3>
@@ -832,7 +843,7 @@ This property is provided as a member value getter and should not be modified.</
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public IEnumerable&lt;object&gt; ProcAct(IAct act, MachiningSession machiningSession, IMachiningService host, IGetSentence sourceCommand, CancellationToken cancellationToken)</code></pre>
<pre><code class="lang-csharp hljs">public IEnumerable&lt;object&gt; ProcAct(IAct act, MachiningSession machiningSession, IMachiningService host, ISentenceCarrier sourceCommand, CancellationToken cancellationToken, StepDiagnosticProgress stepDiagnosticProgress)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -846,11 +857,14 @@ This property is provided as a member value getter and should not be modified.</
<dt><code>host</code> <a class="xref" href="Hi.MachiningSteps.IMachiningService.html">IMachiningService</a></dt>
<dd><p>The milling step host.</p>
</dd>
<dt><code>sourceCommand</code> <a class="xref" href="Hi.NcParsers.IGetSentence.html">IGetSentence</a></dt>
<dt><code>sourceCommand</code> <a class="xref" href="Hi.NcParsers.ISentenceCarrier.html">ISentenceCarrier</a></dt>
<dd><p>The source command.</p>
</dd>
<dt><code>cancellationToken</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.threading.cancellationtoken">CancellationToken</a></dt>
<dd><p>The cancellation token.</p>
</dd>
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd><p>Progress sink for cutter-location strip / per-step updates.</p>
</dd>
</dl>
@@ -873,8 +887,8 @@ This property is provided as a member value getter and should not be modified.</
<a id="Hi_MachiningProcs_MachiningActRunner_ResetMillingStepLuggageDb_" data-uid="Hi.MachiningProcs.MachiningActRunner.ResetMillingStepLuggageDb*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_ResetMillingStepLuggageDb" data-uid="Hi.MachiningProcs.MachiningActRunner.ResetMillingStepLuggageDb">
ResetMillingStepLuggageDb()
<h3 id="Hi_MachiningProcs_MachiningActRunner_ResetMillingStepLuggageDb_Hi_MachiningProcs_StepDiagnosticProgress_System_IProgress_Hi_Common_Messages_IMessage__" data-uid="Hi.MachiningProcs.MachiningActRunner.ResetMillingStepLuggageDb(Hi.MachiningProcs.StepDiagnosticProgress,System.IProgress{Hi.Common.Messages.IMessage})">
ResetMillingStepLuggageDb(StepDiagnosticProgress, IProgress&lt;IMessage&gt;)
</h3>
@@ -883,9 +897,18 @@ This property is provided as a member value getter and should not be modified.</
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void ResetMillingStepLuggageDb()</code></pre>
<pre><code class="lang-csharp hljs">public void ResetMillingStepLuggageDb(StepDiagnosticProgress stepDiagnosticProgress, IProgress&lt;IMessage&gt; messageHost)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd><p>The step-aligned <a class="xref" href="Hi.Common.Messages.IMessage.html">IMessage</a>-channel sink.</p>
</dd>
<dt><code>messageHost</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iprogress-1">IProgress</a>&lt;<a class="xref" href="Hi.Common.Messages.IMessage.html">IMessage</a>&gt;</dt>
<dd><p>Sink-agnostic <a class="xref" href="Hi.Common.Messages.IMessage.html">IMessage</a> host; injected by the caller, may be null outside a session.</p>
</dd>
</dl>
@@ -900,8 +923,8 @@ This property is provided as a member value getter and should not be modified.</
<a id="Hi_MachiningProcs_MachiningActRunner_ResetStateAndClStrip_" data-uid="Hi.MachiningProcs.MachiningActRunner.ResetStateAndClStrip*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_ResetStateAndClStrip" data-uid="Hi.MachiningProcs.MachiningActRunner.ResetStateAndClStrip">
ResetStateAndClStrip()
<h3 id="Hi_MachiningProcs_MachiningActRunner_ResetStateAndClStrip_Hi_MachiningProcs_StepDiagnosticProgress_System_IProgress_Hi_Common_Messages_IMessage__" data-uid="Hi.MachiningProcs.MachiningActRunner.ResetStateAndClStrip(Hi.MachiningProcs.StepDiagnosticProgress,System.IProgress{Hi.Common.Messages.IMessage})">
ResetStateAndClStrip(StepDiagnosticProgress, IProgress&lt;IMessage&gt;)
</h3>
@@ -910,9 +933,18 @@ This property is provided as a member value getter and should not be modified.</
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void ResetStateAndClStrip()</code></pre>
<pre><code class="lang-csharp hljs">public void ResetStateAndClStrip(StepDiagnosticProgress stepDiagnosticProgress, IProgress&lt;IMessage&gt; messageHost)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd><p>The step-aligned <a class="xref" href="Hi.Common.Messages.IMessage.html">IMessage</a>-channel sink.</p>
</dd>
<dt><code>messageHost</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iprogress-1">IProgress</a>&lt;<a class="xref" href="Hi.Common.Messages.IMessage.html">IMessage</a>&gt;</dt>
<dd><p>Sink-agnostic <a class="xref" href="Hi.Common.Messages.IMessage.html">IMessage</a> host; injected by the caller, may be null outside a session.</p>
</dd>
</dl>
@@ -1008,10 +1040,108 @@ Internal Use Only.</p>
<a id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolCutterGeometryUnreasonable_" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolCutterGeometryUnreasonable*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolCutterGeometryUnreasonable_Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_StepDiagnosticProgress_System_Nullable_System_Int32__" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolCutterGeometryUnreasonable(Hi.MachiningProcs.MachiningSession,Hi.MachiningProcs.StepDiagnosticProgress,System.Nullable{System.Int32})">
WarnIfCurrentToolCutterGeometryUnreasonable(MachiningSession, StepDiagnosticProgress, int?)
</h3>
<div class="markdown level1 summary"><p>Emit one-shot session <code>ConfigurationError</code>s naming the root cause when the
currently equipped tool's <a class="xref" href="Hi.Milling.Cutters.MillingCutter.html">MillingCutter</a> has an unreasonable
upper-beam / shank geometry (see
<a class="xref" href="Hi.Milling.Cutters.MillingCutter.html#Hi_Milling_Cutters_MillingCutter_GetUpperBeamGeometryIssues">GetUpperBeamGeometryIssues()</a>) — e.g. an
<code>ExtendedCylinder</code> beam whose <code>FullLength</code> sits below the flute height.
Before this check, such a setting surfaced only as a per-step
<code>NullReferenceException</code> cascade inside the thermal physics, with nothing
naming the beam. Additionally emits a <code>Cutter-Shank&ndash;ThermalModelUnavailable</code>
<code>ConfigurationWarning</code> when the shank thermal model cannot be built for a
reason no geometry issue names (e.g. no beam configured at all) — this is the
once-per-tool announcement of the silent per-step fallback in
<code>MillingTemperatureUtil.GetStepTemperature</code>, which is deliberately quiet at
the fallback site to avoid per-step message flooding. Gated by
<a class="xref" href="Hi.MachiningProcs.MachiningActRunnerConfig.html#Hi_MachiningProcs_MachiningActRunnerConfig_EnablePhysics">EnablePhysics</a>; deduped per tool reference
via <a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_WarnedCutterGeometryTools">WarnedCutterGeometryTools</a>, mirroring
<a class="xref" href="Hi.MachiningProcs.MachiningActRunner.html#Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteMaterialMissing_Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_StepDiagnosticProgress_System_Nullable_System_Int32__">WarnIfCurrentToolFluteMaterialMissing(MachiningSession, StepDiagnosticProgress, int?)</a> (same two emission points:
each <a class="xref" href="Hi.Numerical.Acts.IActTooling.html">IActTooling</a> and <code>BeginSession</code>).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void WarnIfCurrentToolCutterGeometryUnreasonable(MachiningSession machiningSession, StepDiagnosticProgress stepDiagnosticProgress, int? toolId = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>machiningSession</code> <a class="xref" href="Hi.MachiningProcs.MachiningSession.html">MachiningSession</a></dt>
<dd></dd>
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd></dd>
<dt><code>toolId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteCountZero_" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolFluteCountZero*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteCountZero_Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_StepDiagnosticProgress_System_Nullable_System_Int32__" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolFluteCountZero(Hi.MachiningProcs.MachiningSession,Hi.MachiningProcs.StepDiagnosticProgress,System.Nullable{System.Int32})">
WarnIfCurrentToolFluteCountZero(MachiningSession, StepDiagnosticProgress, int?)
</h3>
<div class="markdown level1 summary"><p>Emit a one-shot session warning if the currently equipped
<span class="xref">Hi.MachiningProcs.MachiningActRunner.MachiningEquipment</span>.<code>MachiningTool</code> is a <a class="xref" href="Hi.Milling.Cutters.MillingCutter.html">MillingCutter</a>
whose flute count resolves to zero (a null or empty
<a class="xref" href="Hi.Milling.Cutters.MillingCutter.html#Hi_Milling_Cutters_MillingCutter_Fluting">Fluting</a>). A zero flute count silently
poisons the physics chain with nothing naming the tool: feed-per-tooth
divides by zero, the force side fills <code>Vec3d.NaN</code> for every rotation
division and the thermal side returns null. Gated by
<a class="xref" href="Hi.MachiningProcs.MachiningActRunnerConfig.html#Hi_MachiningProcs_MachiningActRunnerConfig_EnablePhysics">EnablePhysics</a>; deduped per tool reference via
<a class="xref" href="Hi.MachiningProcs.MachiningSession.html#Hi_MachiningProcs_MachiningSession_WarnedFluteCountZeroTools">WarnedFluteCountZeroTools</a>, mirroring
<a class="xref" href="Hi.MachiningProcs.MachiningActRunner.html#Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteMaterialMissing_Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_StepDiagnosticProgress_System_Nullable_System_Int32__">WarnIfCurrentToolFluteMaterialMissing(MachiningSession, StepDiagnosticProgress, int?)</a> (same two emission points:
each <a class="xref" href="Hi.Numerical.Acts.IActTooling.html">IActTooling</a> and <code>BeginSession</code>).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void WarnIfCurrentToolFluteCountZero(MachiningSession machiningSession, StepDiagnosticProgress stepDiagnosticProgress, int? toolId = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>machiningSession</code> <a class="xref" href="Hi.MachiningProcs.MachiningSession.html">MachiningSession</a></dt>
<dd></dd>
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd></dd>
<dt><code>toolId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>
<a id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteMaterialMissing_" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolFluteMaterialMissing*"></a>
<h3 id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteMaterialMissing_Hi_MachiningProcs_MachiningSession_System_Nullable_System_Int32__" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolFluteMaterialMissing(Hi.MachiningProcs.MachiningSession,System.Nullable{System.Int32})">
WarnIfCurrentToolFluteMaterialMissing(MachiningSession, int?)
<h3 id="Hi_MachiningProcs_MachiningActRunner_WarnIfCurrentToolFluteMaterialMissing_Hi_MachiningProcs_MachiningSession_Hi_MachiningProcs_StepDiagnosticProgress_System_Nullable_System_Int32__" data-uid="Hi.MachiningProcs.MachiningActRunner.WarnIfCurrentToolFluteMaterialMissing(Hi.MachiningProcs.MachiningSession,Hi.MachiningProcs.StepDiagnosticProgress,System.Nullable{System.Int32})">
WarnIfCurrentToolFluteMaterialMissing(MachiningSession, StepDiagnosticProgress, int?)
</h3>
@@ -1030,13 +1160,15 @@ and reference equality is the right unit of dedup anyway.</p>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void WarnIfCurrentToolFluteMaterialMissing(MachiningSession machiningSession, int? toolId = null)</code></pre>
<pre><code class="lang-csharp hljs">public void WarnIfCurrentToolFluteMaterialMissing(MachiningSession machiningSession, StepDiagnosticProgress stepDiagnosticProgress, int? toolId = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>machiningSession</code> <a class="xref" href="Hi.MachiningProcs.MachiningSession.html">MachiningSession</a></dt>
<dd></dd>
<dt><code>stepDiagnosticProgress</code> <a class="xref" href="Hi.MachiningProcs.StepDiagnosticProgress.html">StepDiagnosticProgress</a></dt>
<dd></dd>
<dt><code>toolId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>