Skip to content
Start free evaluation

PdcommSecs1Message

Struct

A message to send with pdcomm_secs1_submit().

typedef struct PdcommSecs1Message { ... } PdcommSecs1Message

Declared in: #include <pdcomm_secs1.h>

The fields map to the SEMI E4 block header. The endpoint splits the body into blocks of at most 244 bytes, numbers them from 1, and sets the E-bit on the last block.

Members

body

Field

Message body, normally one encoded SECS-II item.

const uint8_t *body

Declared in: #include <pdcomm_secs1.h>

The bytes are sent as given and are not parsed. May be NULL when body_length is 0.

body_length

Field

Number of bytes at body.

size_t body_length

Declared in: #include <pdcomm_secs1.h>

device_id

Field

Device ID, 0 to 32767.

uint16_t device_id

Declared in: #include <pdcomm_secs1.h>

direction

Field

Direction that sets the R-bit: #PDCOMM_SECS1_TO_HOST or #PDCOMM_SECS1_TO_EQUIPMENT.

uint8_t direction

Declared in: #include <pdcomm_secs1.h>

function

Field

SECS-II function number, 0 to 255.

uint8_t function

Declared in: #include <pdcomm_secs1.h>

reply_expected

Field

W-bit: 1 when the sender expects a reply, otherwise 0.

uint8_t reply_expected

Declared in: #include <pdcomm_secs1.h>

reserved

Field

Reserved; must be zero.

uint16_t reserved

Declared in: #include <pdcomm_secs1.h>

stream

Field

SECS-II stream number, 0 to 127.

uint8_t stream

Declared in: #include <pdcomm_secs1.h>

struct_size

Field

Size of this structure in bytes; set to sizeof(PdcommSecs1Message) or larger.

size_t struct_size

Declared in: #include <pdcomm_secs1.h>

system_bytes

Field

System bytes of the block header.

uint32_t system_bytes

Declared in: #include <pdcomm_secs1.h>

Written to the wire in big-endian order. The application chooses them; a reply carries the system bytes of its primary message.

version

Field

Structure version; must be #PDCOMM_SECS1_MESSAGE_VERSION.

uint32_t version

Declared in: #include <pdcomm_secs1.h>