Skip to content
Start free evaluation

PdcommGemProgramInfo

Struct

Process program details of a GEM result, filled by pdcomm_gem_result_program_info().

typedef struct PdcommGemProgramInfo { ... } PdcommGemProgramInfo

Declared in: #include <pdcomm_gem_programs.h>

Request results (incoming primaries) expose the received PPIDs, body, and declared length plus the local processing state. Response results expose only wire facts: a Host cannot infer remote application or durability from them.

Members

acknowledgement

Field

PPGNT (S7F2) or ACKC7 (S7F4, S7F18), sent or received.

uint8_t acknowledgement

Declared in: #include <pdcomm_gem_programs.h>

acknowledgement_present

Field

1 when acknowledgement is valid.

uint8_t acknowledgement_present

Declared in: #include <pdcomm_gem_programs.h>

applied

Field

1 when responding to this request changed the store.

uint8_t applied

Declared in: #include <pdcomm_gem_programs.h>

confirmation_required

Field

1 when a retained reply waits for pdcomm_gem_program_confirm_reply() after #PDCOMM_PROGRAM_UNCONFIRMED.

uint8_t confirmation_required

Declared in: #include <pdcomm_gem_programs.h>

declared_length

Field

LENGTH declared in an incoming S7F1, in PPBODY payload bytes; otherwise 0.

uint32_t declared_length

Declared in: #include <pdcomm_gem_programs.h>

durability

Field

Durability of the installation made while responding: one of the PDCOMM_GEM_PROGRAM_* durability values.

uint32_t durability

Declared in: #include <pdcomm_gem_programs.h>

grant_activated

Field

1 when answering this S7F1 activated a grant; it reports the original activation, not whether the grant is still live.

uint8_t grant_activated

Declared in: #include <pdcomm_gem_programs.h>

id_count

Field

Number of PPIDs available through #PDCOMM_GEM_PROGRAM_ID.

size_t id_count

Declared in: #include <pdcomm_gem_programs.h>

1 for S7F1, F3, and F5 requests; the list length for S7F17; 0 for S7F19; 1 for an S7F6 naming a known program and 0 for the unknown sentinel; the directory length for S7F20; 0 for acknowledgement replies. The generic entry_count of ::PdcommGemResultInfo has the same value.

is_request

Field

1 for an incoming request; 0 for a response to this endpoint's request.

uint8_t is_request

Declared in: #include <pdcomm_gem_programs.h>

persistence_status

Field

#PDCOMM_OK, or the persistence error of an unconfirmed installation.

int32_t persistence_status

Declared in: #include <pdcomm_gem_programs.h>

reply_ready

Field

1 when a prepared reply is retained and can be sent by pdcomm_gem_program_respond().

uint8_t reply_ready

Declared in: #include <pdcomm_gem_programs.h>

request_kind

Field

Request kind: one of #PDCOMM_GEM_PROGRAM_GRANT to #PDCOMM_GEM_PROGRAM_DIRECTORY.

uint32_t request_kind

Declared in: #include <pdcomm_gem_programs.h>

responded

Field

1 after the reply to an incoming request was queued.

uint8_t responded

Declared in: #include <pdcomm_gem_programs.h>

struct_size

Field

Size of this structure in bytes; set to sizeof(PdcommGemProgramInfo) or larger before the call.

size_t struct_size

Declared in: #include <pdcomm_gem_programs.h>