Skip to content
Start free evaluation

pdcomm_gem_equipment_configure_enhanced_commands

Function

Installs the enhanced remote command store of a GEM Equipment endpoint.

PdcommStatus pdcomm_gem_equipment_configure_enhanced_commands(PdcommTcpEndpoint *endpoint, const PdcommGemEnhancedCommandOptions *options, const PdcommGemEnhancedObjectDefinition *objects, size_t count)

Declared in: #include <pdcomm_gem_enhanced_commands.h>

Every object, command, and parameter definition is validated and copied into a temporary store, which is installed only when all definitions are valid and every completion CEID exists in the report catalog. The store can be configured only once.

Parameters

NameDescription
endpointStopped TCP endpoint with a configured GEM Equipment.
optionsStore limits; struct_size must be at least sizeof(PdcommGemEnhancedCommandOptions).
objectsArray of count object definitions. May be NULL when count is 0.
countNumber of objects; must not exceed options->max_objects.

Returns

#PDCOMM_OK when the store was installed; #PDCOMM_INVALID_ARGUMENT when endpoint or options is NULL, a struct_size is too small, version or reserved is wrong, an item_limits value is 0, an array pointer or name item is NULL, a flag is not 0 or 1, an object name is not an ASCII item, a command or parameter name or format is invalid (including JIS-8), a count range or bound is invalid, a name is duplicated, or a completion CEID is not in the report catalog; #PDCOMM_LIMIT_EXCEEDED when a count, total, or name length exceeds its limit; #PDCOMM_INVALID_STATE when the endpoint is not stopped, holds a staged TCP event, has no GEM Equipment, or already has an enhanced command store; #PDCOMM_ALLOCATION_FAILED when memory could not be allocated; #PDCOMM_POISONED when the endpoint is poisoned or a panic was contained.

Notes

  • No input pointer or item is retained after the call returns.