Skip to content
Start free evaluation

PDComm.Gem300CapabilityOptions

Class

Limits that bound the contents of a Gem300CapabilityCatalog.

public sealed record Gem300CapabilityOptions

The catalog copies the options when it is created. All six limits must be nonzero and Gem300CapabilityOptions.MaxCapabilitiesPerProfile must not exceed 4; otherwise construction fails with PdcommStatus.LimitExceeded. A replacement that exceeds a limit fails with the same status and leaves the catalog unchanged. Values are application policy, not standard defaults.

Parameters

NameDescription
MaxProfilesThe largest number of profiles in the catalog.
MaxCapabilitiesPerProfileThe largest number of capabilities in one profile, at most 4: the capabilities of a profile must use distinct Gem300Axis values.
MaxTotalCapabilitiesThe largest number of capabilities across all profiles.
MaxProfileIdBytesThe longest profile ID, in bytes.
MaxCapabilityIdBytesThe longest capability ID, in bytes.
MaxTotalIdentifierBytesThe largest total length, in bytes, of all profile and capability IDs.

Members

Gem300CapabilityOptions

Constructor

Limits that bound the contents of a Gem300CapabilityCatalog.

public Gem300CapabilityOptions(nuint MaxProfiles, nuint MaxCapabilitiesPerProfile, nuint MaxTotalCapabilities, nuint MaxProfileIdBytes, nuint MaxCapabilityIdBytes, nuint MaxTotalIdentifierBytes)

The catalog copies the options when it is created. All six limits must be nonzero and Gem300CapabilityOptions.MaxCapabilitiesPerProfile must not exceed 4; otherwise construction fails with PdcommStatus.LimitExceeded. A replacement that exceeds a limit fails with the same status and leaves the catalog unchanged. Values are application policy, not standard defaults.

Parameters

NameDescription
MaxProfilesThe largest number of profiles in the catalog.
MaxCapabilitiesPerProfileThe largest number of capabilities in one profile, at most 4: the capabilities of a profile must use distinct Gem300Axis values.
MaxTotalCapabilitiesThe largest number of capabilities across all profiles.
MaxProfileIdBytesThe longest profile ID, in bytes.
MaxCapabilityIdBytesThe longest capability ID, in bytes.
MaxTotalIdentifierBytesThe largest total length, in bytes, of all profile and capability IDs.

MaxCapabilitiesPerProfile

Property

The largest number of capabilities in one profile, at most 4: the capabilities of a profile must use distinct Gem300Axis values.

public nuint MaxCapabilitiesPerProfile { get; init; }

MaxCapabilityIdBytes

Property

The longest capability ID, in bytes.

public nuint MaxCapabilityIdBytes { get; init; }

MaxProfileIdBytes

Property

The longest profile ID, in bytes.

public nuint MaxProfileIdBytes { get; init; }

MaxProfiles

Property

The largest number of profiles in the catalog.

public nuint MaxProfiles { get; init; }

MaxTotalCapabilities

Property

The largest number of capabilities across all profiles.

public nuint MaxTotalCapabilities { get; init; }

MaxTotalIdentifierBytes

Property

The largest total length, in bytes, of all profile and capability IDs.

public nuint MaxTotalIdentifierBytes { get; init; }