Table of Contents

Namespace Hi.Mapping

Classes

CsvNcStep

Represents a numerical control step loaded from a CSV file, with support for interpolation and arithmetic operations.

FileToTimeShotMapping

Provides mapping between files and time shot data with caching capabilities. This class manages the loading and caching of time shot data from measurement files.

MapSeriesCsvConfig

Column titles of the time-series (shot) CSV file read by MapSeriesByActualTime(string, CycleSamplingMode, ClStrip, IProgress<IMessage>, CancellationToken?, Range<int>, MapSeriesCsvConfig) (the one-step-many-data mapping). One tag per column the reader looks up.

MapSingleCsvConfig

Column titles of the CSV file read by MapSingleByCsvFile(ClStrip, string, string, IProgress<IMessage>, Func<DateTime, TimeSpan>, MapSingleCsvConfig) (the one-step-one-data mapping). One tag per column the reader looks up, each defaulting to the MappingUtil title the step-file writer emits, so a default instance reads exactly what the reader read before the titles became configurable. A blank tag falls back to that default.

MappedStepColumns

Internal Use Only. The rule the two paths that carry CSV columns onto steps share — MapSingleByCsvFile(ClStrip, string, string, IProgress<IMessage>, Func<DateTime, TimeSpan>, MapSingleCsvConfig, IStepPropertyAccessHost) and a CSV program's residual columns (CsvActDataSemantic, registered by CsvSegmenter): a column named like a built-in step property (IsBuiltInKey(string)) is skipped — the registry reads the step's own value under that key, never one written onto the step. A step file HiNC wrote carries those columns as simulated values, so mapping one back loses nothing; a column of another file under such a name (a controller's own spindle speed, say) is kept only after its header is renamed, which the skip message says. Every other column is written onto the steps and registered as a step variable (unit none, format G4) unless its key is registered already, so a variable registered before the mapping keeps its name, unit and format.

MappingUtil

Shared CSV column tags and physics-related column prefixes for mapping simulator or logged controller data onto MachiningStep rows.

StepTimeShotUtil

Utility methods for working with time-based shots (measurements) and mapping them to machining steps.

TimeMapping

Provides mapping between machining steps and time-based measurements (shots). It is one step to many data mapping (one-many).

Interfaces

IAccelerationShot

Interface for objects that represent acceleration measurements at a specific time point. Extends the ITimeShot interface to include acceleration data in multiple units.

IForceShot

Interface for objects that represent force measurements at a specific time point. Extends the ITimeShot interface to include force vector data.

IMomentShot

Interface for objects that represent moment (torque) measurements at a specific time point. Extends the ITimeShot interface to include moment vector data.

ITimeShot

Interface for objects that represent a snapshot of data at a specific time and support arithmetic operations. This interface provides a foundation for time-series data with vector operations.

Enums

StepTimeShotUtil.CycleSamplingMode

Defines the cycle sampling modes for mapping time shots to machining steps. The sampling mode determines how time shots are aligned with machining cycles.

Delegates

StepTimeShotUtil.GetTimeShotByFileDelegate

Delegate for retrieving time shots from a file. Implementations should handle file reading, parsing, and error handling.