Table of Contents

Class SiemensLoopFrame

Namespace
Hi.NcParsers.Keywords.Siemens
Assembly
HiMech.dll

One entry on the SiemensLoopFrames stack. Identity is (Kind, FilePath, BeginLineNo) — the file path disambiguates a loop line in the main program from the same line number inside an inlined subprogram, and lets the terminator refuse a cross-file mismatch.

public class SiemensLoopFrame
Inheritance
SiemensLoopFrame
Inherited Members
Extension Methods

Fields

KindFor

Kind value for FOR frames.

public const string KindFor = "FOR"

Field Value

string

KindLoop

Kind value for LOOP frames.

public const string KindLoop = "LOOP"

Field Value

string

KindRepeat

Kind value for REPEAT/UNTIL frames.

public const string KindRepeat = "REPEAT"

Field Value

string

KindWhile

Kind value for WHILE frames.

public const string KindWhile = "WHILE"

Field Value

string

Properties

AdvancePending

FOR frames only: set by the ENDFOR back-jump just before it rewinds, cleared by the FOR head on arrival. Distinguishes the legitimate iteration re-arrival (advance the counter) from a re-entry via GOTOF/GOTOB while the frame is still on the stack — Sinumerik restarts the construct in that case, so the FOR head drops the stale frame and re-initialises.

public bool AdvancePending { get; set; }

Property Value

bool

BeginLineNo

0-based file line index of the loop-entry block — the back-jump target.

public int BeginLineNo { get; set; }

Property Value

int

End

FOR frames only: inclusive end bound resolved once at loop entry.

public double End { get; set; }

Property Value

double

FilePath

Source-level file path of the loop-entry block (Sentence.FilePath relative form).

public string FilePath { get; set; }

Property Value

string

Kind

Construct kind: one of the Kind* constants.

public string Kind { get; set; }

Property Value

string

Value

FOR frames only: current counter value.

public double Value { get; set; }

Property Value

double

Var

FOR frames only: loop variable name.

public string Var { get; set; }

Property Value

string