Skip to content
Start free evaluation

PDComm.GemCommandParameterDefinition

Class

Defines one parameter of a remote command definition.

public sealed record GemCommandParameterDefinition

Parameters

NameDescription
NameThe parameter name (CPNAME): an ASCII item, or a scalar integer item (I1, I2, I4, I8, U1, U2, U4 or U8). Positive signed and unsigned names compare equal. The item is read only during configuration.
RequiredWhether the parameter must be present. A missing required parameter is reported with CPACK 2.
FormatThe exact SECS-II format the value must have, or null to accept any allowed format. A value with another format is reported with CPACK 3. For S2F41 commands only Binary, Boolean, ASCII and integer formats are allowed; for S2F49 commands every format except JIS-8 is allowed.
MinCountThe minimum element count of the value. A shorter value is reported with CPACK 2.
MaxCountThe maximum element count of the value. It must not be less than MinCount. A longer value is reported with CPACK 2.
MinimumThe optional inclusive lower bound of every element of an integer value. Bounds require an integer Format. A value below the bound is reported with CPACK 2.
MaximumThe optional inclusive upper bound of every element of an integer value. It must not be less than Minimum. A value above the bound is reported with CPACK 2.

Members

GemCommandParameterDefinition

Constructor

Defines one parameter of a remote command definition.

public GemCommandParameterDefinition(SecsItem Name, bool Required, SecsFormat? Format, nuint MinCount, nuint MaxCount, Int128? Minimum = null, Int128? Maximum = null)

Parameters

NameDescription
NameThe parameter name (CPNAME): an ASCII item, or a scalar integer item (I1, I2, I4, I8, U1, U2, U4 or U8). Positive signed and unsigned names compare equal. The item is read only during configuration.
RequiredWhether the parameter must be present. A missing required parameter is reported with CPACK 2.
FormatThe exact SECS-II format the value must have, or null to accept any allowed format. A value with another format is reported with CPACK 3. For S2F41 commands only Binary, Boolean, ASCII and integer formats are allowed; for S2F49 commands every format except JIS-8 is allowed.
MinCountThe minimum element count of the value. A shorter value is reported with CPACK 2.
MaxCountThe maximum element count of the value. It must not be less than MinCount. A longer value is reported with CPACK 2.
MinimumThe optional inclusive lower bound of every element of an integer value. Bounds require an integer Format. A value below the bound is reported with CPACK 2.
MaximumThe optional inclusive upper bound of every element of an integer value. It must not be less than Minimum. A value above the bound is reported with CPACK 2.

Format

Property

The exact SECS-II format the value must have, or null to accept any allowed format. A value with another format is reported with CPACK 3. For S2F41 commands only Binary, Boolean, ASCII and integer formats are allowed; for S2F49 commands every format except JIS-8 is allowed.

public SecsFormat? Format { get; init; }

MaxCount

Property

The maximum element count of the value. It must not be less than MinCount. A longer value is reported with CPACK 2.

public nuint MaxCount { get; init; }

Maximum

Property

The optional inclusive upper bound of every element of an integer value. It must not be less than Minimum. A value above the bound is reported with CPACK 2.

public Int128? Maximum { get; init; }

MinCount

Property

The minimum element count of the value. A shorter value is reported with CPACK 2.

public nuint MinCount { get; init; }

Minimum

Property

The optional inclusive lower bound of every element of an integer value. Bounds require an integer Format. A value below the bound is reported with CPACK 2.

public Int128? Minimum { get; init; }

Name

Property

The parameter name (CPNAME): an ASCII item, or a scalar integer item (I1, I2, I4, I8, U1, U2, U4 or U8). Positive signed and unsigned names compare equal. The item is read only during configuration.

public SecsItem Name { get; init; }

Required

Property

Whether the parameter must be present. A missing required parameter is reported with CPACK 2.

public bool Required { get; init; }