Table of Contents

Namespace Hi.Common

Classes

BinIoUtil

Utility class for binary I/O operations.

BitUtil

Utility for bit control for integer.

BlockingTimer

Timer use one task and delay each event call. The delay time is Period, counted from the previous trigger to the nest trigger. The first function call does no intending delay. If the execution time is over the Period, no delay between the triggers.

BytesUtil

Utility class for byte array operations and memory size conversions.

ConcurrentTimeCounter

Thread-safe utility for measuring and tracking execution time across multiple tasks.

ConsoleUtil

Utility class for console window operations.

CppLogUtil

Internal Use Only.

CultureTextAttribute

Declares one culture's text for one vocabulary key on the member carrying the attribute — the static wording of command titles and labels, owned by the declaring library as a DEFAULT: a GUI layer may override it or add cultures the library never declared (see SetTextOverride(string, string, string)), and a culture left undeclared is not an error — lookups fall back toward the English key.

The key defaults to the member's own display name: its DisplayNameAttribute value when present, otherwise the member name spaced into words (SpacePascalWords(string)). Set Key to declare a word the member does not itself name (a shared switch word, a mode label). Apply the attribute once per culture.

CultureUtil

The English culture the engine formats and parses with, and the one call that pins a thread to it.

DuplicateUtil

Utility methods for duplication operations.

EnumUtil

Utility class for enum operations.

EnumerablePlayer

Run enumerable with Pause(), Resume() and etc. functions.

IndexSegment

Represents a segment of indices with a beginning (inclusive) and ending (exclusive> point. Used for defining segment of data in collections or arrays.

IntegerKeyDictionaryConverter

Converts dictionaries with string keys to dictionaries with integer keys for more efficient storage and lookup.

IntegerKeyDictionaryConverter<TValue>

Generic version of IntegerKeyDictionaryConverter that works with a specific value type.

InternalException

Exception that represents an internal error that should never occur during normal operation. Used to indicate programming errors or unexpected states that require developer attention.

InvokeUtil

Utility class for method invocation operations.

JsonUtil

Helper utilities for reading and writing JSON files.

LooseRunner

Provides a mechanism for running actions asynchronously in a loose manner. Only the most recent action is executed and previous pending actions are discarded.

ManualUtil

Utility class for handling manual and documentation files with culture support.

MaskUtil

Utility for bits masking.

NameUtil

Utility class for handling object names and display names.

PacePlayee

Represents an entity that can be controlled by the pace player.

PacePlayer

Controls the pace execution of a task.

Pair<TA, TB>

Editable pair values.

ProgressFraction

Represents a progress report implementation. Also exposes an IMessage view (explicitly implemented) so a progress fraction can ride the unified message channel uniformly alongside SimpleMessage / NcDiagnostic: Progress + System, with Msg as the notification and Detail as the detail payload.

Range<T>

Range from Min to Max.

ResourceDefaultMarker

File-name convention that marks a shipped resource item as a system-owned default: a file carries the token before its final extension (AlTiBN.default.CoatingMaterial), a folder-shaped resource carries it as a folder-name suffix (MachineTool/Table-B1.default/) with the files inside left untouched.

ResourceLayout

Provides the relative folder paths that make up the shipped resource tree.

ResourceUtil

Utility class for working with resource managers and localized strings, and the home of the attribute-declared command vocabulary: the CultureTextAttribute declarations of an assembly, exposed as “type/member + culture → text” queries and as ICommandTextSource instances, with GUI-layer overrides layered on top (SetTextOverride(string, string, string)).

RoutineBlocker

Block the thread to the given delay from the previous block.

SeqPairUtil

Utility class for SeqPair operations.

SeqPair<T>

Represents a sequence pair containing previous and current values. Used to track sequential state changes of a value.

ServerFileExplorerConfig

Configuration for server file explorer functionality.

StringLocalizer

Provides localization functionality for strings using resource managers.

StringUtil

Utility for managing text.

TaskUtil

Utility class for Task-related operations.

TimeCounter

A utility counts the average/total time consume between the Bound(object) areas. The count of time consume for the given key starts at the first time (and the odd time) calling Bound(object); stops and accumulates at the second time (and the even time).

Interfaces

IAbstractNote

Interface for objects that provide an abstract description or note.

IBinaryIo

Interface for binary input/output operations. Extends IWriteBin to provide both read and write capabilities.

IClearCache

Interface for objects that can clear their internal cache.

ICommandTextSource

A culture-bearing vocabulary commands compose their titles and labels from: it maps a vocabulary key — the English default text — onto that culture's text. The CALLER picks the source, so the presentation layer owns the language (no thread culture involved); the command keeps its composition and degradation rules. Presentation layers can implement their own source or take the engine-default one from GenTextSource(CultureInfo, params Type[]) ([CultureText] declarations overlaid by SetTextOverride(string, string, string) registrations).

IDuplicate

Interface for objects that support deep cloning/duplication.

IGetQuantityByKey

Interface for retrieving a quantity value using a string key.

IGetSelectionName

Interface for objects that can provide a name for selection purposes.

INameNote

Interface for objects that have a name and note property.

IPreferredFileName

Interface for objects that can specify a preferred file name. Generally used to suggest a name when generating or saving files.

IProgressFraction

Interface for progress reporting functionality.

ISourceFile

Interface for objects that have a source file.

IToPresentDto

Interface for converting objects to presentation DTOs (Data Transfer Objects) for JSON serialization.

IUpdateByContent

Interface for objects that can update themselves based on their content.

IUriGetter

Interface for retrieving a URI string.

IWriteBin

Interface for writing binary data.

Enums

SearchResult

Represents the result of a search operation.

Delegates

CppLogUtil.LogDelegate

Internal Use Only.

LooseRunner.MergedCancellationTokenRun

Delegate for actions that accept a merged cancellation token. The merged token combines the runner's disposal token with an optional external cancellation token.