Namespace Hi.SessionCommands
Classes
- CollisionDetectionCommand
Command that turns collision detection on or off for the session. One of the single-setting successors of the legacy PreSettingCommand bundle.
- CommandCatalogAttribute
Marks an ISessionCommand as user-addable: GUIs build their “Add Command” catalog from the commands carrying this attribute, grouped by Category. A command WITHOUT this attribute stays loadable from project files (its
Regregistration is unaffected) but is not offered for creation.
- CommandFieldAttribute
Marks a session-command property as a directly editable scalar field, so generic editors (e.g. the web UI's fallback command panel) can render and update it without a hand-written per-command editor. Supported property types: bool, int, double, string and enums. An enum renders as a pick list of its members, each labeled by the member's vocabulary key (its name with PascalCase words spaced) — declare the members' texts with CultureTextAttribute in this assembly.
- EnablingWrapper
Wrapper for session commands that provides enable/disable functionality.
- ExportMeshedGeomToStlCommand
Command to call ExportMeshedGeomToStl(string, double).
- GeomDiffCommand
Command for calculating geometric differences between workpieces.
- Lang
Language package class for command flow.
- ListCommand
A command that contains and executes a list of other commands.
- MachiningMotionResolutionCommand
Command for setting machining motion resolution for the milling process.
- MachiningResolutionCommand
Command that sets the session's machining resolution — the meshing resolution of material removal. One of the single-setting successors of the legacy PreSettingCommand bundle.
- ManualToolingCommand
Command that puts a tool of the tool house in the spindle the way the operator loads one by hand: no tool-change travel, no machining step, no program played and no file number taken. The mission-list form of PlayToolingTeleport(int), for a program written for a hand-changed tool (no
T… M06): placed before the program's NcFileCommand, which then keeps its lines and its file number (an NcCodeCommand holding the change would play as a file of its own and take a number). It applies no tool length — the program'sG43 Hor the work offset's Z carries it, as on the machine; a length left out puts the tip a whole tool length below every programmed Z, so the play either touches nothing (Play-Touch–Noneon the shell) or plunges that far into the stock, and where another tool of the play did touch, the tool that did not is named byTool-Touch–Noneon the step sink. A ToolId below 1 (the fresh command's 0) mounts nothing and saysManualTooling-Command–NoToolIdon the shell; an id the house lacks saysTooling–NotFoundand leaves the spindle empty, a tool without a cutterTooling–NoCutter. The spindle keeps the tool until the next tooling act or the reset.
- MapSeriesByCsvFileCommand
Command to call MapSeriesByCsvFile(string, CycleSamplingMode, MapSeriesCsvConfig): pairs each step that carries an actual time with its window of a time-series (sensor) CSV file (one-to-many mapping). Carries the column titles of its file (CsvConfig), so a sensor recording maps without renaming its columns first.
- MapSingleByCsvFileCommand
Command to call MapSingleByCsvFile(string, MapSingleCsvConfig): embeds one CSV row per step (one-to-one mapping) onto the steps played so far. Carries the column titles of its file (CsvConfig), so a controller log maps without renaming its columns first.
- NcCodeCommand
Command for executing NC code directly.
- NcFileCommand
Command for executing an NC program file (
Ncis the umbrella term: brand controller code, NX-CL or CSV). The runner is picked by NcKind — Auto (the default) detects by file extension:.cl/.cls/.clsfplay as NX-CL,.csvas CSV, anything else as brand NC code. The GUI labels it “Program File”.
- NcOptOptionCommand
Command for NC optimization options.
- OptimizeToFilesCommand
Command to call OptimizeToFiles(string).
- PauseOnFailureCommand
Command that turns pause-on-failure on or off for the session. One of the single-setting successors of the legacy PreSettingCommand bundle.
- PhysicsCommand
Command that turns physics simulation on or off for the session. One of the single-setting successors of the legacy PreSettingCommand bundle.
- PostExecutionCommand
Runs the outputs of a play – the step and shot files, the optimized and the converted programs, the geometry difference – on what the commands above it in the mission have played, at the moment it runs. It is not a hook at the end of the mission: a program below it is not covered, so place it after the program commands it is to cover. A session played again without a reset still holds the earlier play's steps, and the step and shot writers walk them too: a program whose steps run on unbroken from the earlier play's keeps both plays in its file, while a file whose program resumes after another program's steps is opened afresh there and keeps only the later play's (see StepFileTemplate). The outputs run one after another as the command is enumerated, with no pace point between them, so they come from one state of the session: a Pause, or a job queued for the run's next pace point (a step-physics recompute), waits past the last of them for the run's next pace point – after the first action a later row hands the player, or inside a later script's play. With no pace point after them – the mission's last row, where a new project puts this command – a Pause holds nothing and the run finishes, and a queued job runs at the run's end. A Stop during one output ends the run before the next, the player seeing it at the null the command yields after each output.
- PreSettingCommand
Legacy bundle of pre-settings applied before NC command running, superseded by the single-setting commands (machining resolution, motion resolution, collision detection, pause on failure, physics). Loading a project expands a saved instance into those commands via ExpandToEntries(bool); saving never writes the bundle back. The class stays functional for API callers that construct it directly.
- RecordMeshedGeomCommand
Command for recording meshed geometry to/from file.
- RecordNcResultCommand
Records the play's result – every step, every toolpath position, every program block the programs below it play – into a result folder (
Output/results/[NcName]-[timestamp]by default: the first recorded program's name and the recording's time), with the finished stock beside it. Place it above the program commands it is to cover: a BeginRecording records from where it stands to the end of the mission, a stop of the player, or an EndRecording command below it. A mission without this command records nothing, and so does a Begin placed below every program (the add dialog puts a new command after the selected one, or at the end: move it up). A runtime reset inside the recording ends the folder and begins the next one for the programs after it. Recording never stops the play: what it cannot do is said on the messages.
- ReviewNcResultCommand
Reviews a recorded play result (RecordNcResultCommand) in the mission: the strip, the steps and the physics charts are rebuilt from the result file, the finished stock is loaded as the workpiece, without a play. The result folder is named relative to the project folder; left empty, the newest completed result under
Output/resultsis reviewed. Place it last in the mission: the review stays open until the next reset (the player's Reset, a CloseReview command,ResetRuntime(), a project switch) and a program command below it is refused while the review is open. A recording open when the review begins is ended first, and with the folder left empty its result is the one reviewed (a mission of Record, the programs, Review).
- ScriptCommand
Command for executing C# scripts in the milling process.
- SetupAngleEstimationCommand
Command that estimates a cutter's setup angle — how far it is turned in the holder, SetupAngle_deg — from the smart holder's recording of the tool's first seconds of contact, and (unless the gate refuses) applies it to the tool and recomputes the finished steps. The mission-list form of ArmSetupAngleEstimation(int, double, string, bool, string, double, string, SampleFlag) (Timing = DuringThePlay, before the program) and of EstimateSetupAngleByFirstContact(int, double, string, bool, string, double, string, int, SampleFlag) (Now, after it). The channels the estimate reads are the command's own selection (UseMx, UseMy, UseMz — the
sampleFlagsof the script forms); a selection the tool's holder does not declare is refused by the engine (Sample-Channel–NotObserved), never guessed.
- WriteShotFilesCommand
Command to call WriteShotFiles(string, double).
- WriteStepFilesCommand
Command to call WriteStepFiles(string).
Interfaces
- ISessionCommand
Interface for commands that can be executed in a machining session.
- ITitleCommand
ISessionCommand with title.
Enums
- CommandCategory
Category of a session command in user-facing command catalogs (the GUI “Add Command” listings). Declaration order is the display order; values are appended, never moved (the wire uses the lower-cased name).
- RecordMeshedGeomActionEnum
Action of the RecordMeshedGeomCommand.
- RecordNcResultActionEnum
What a RecordNcResultCommand does where it stands in the mission.
- ReviewNcResultActionEnum
What a ReviewNcResultCommand does where it stands in the mission.
- SetupAngleEstimationTiming
When a SetupAngleEstimationCommand estimates.