IgH EtherCAT Master  1.5.2
mbox_gateway_request.c File Reference

EtherCAT Mailbox Gateway request functions. More...

Go to the source code of this file.

Macros

#define EC_MBG_REQUEST_RESPONSE_TIMEOUT   1000
 Default timeout in ms to wait for Mbox Gateway responses.
 

Functions

void ec_mbg_request_clear_data (ec_mbg_request_t *req)
 Free allocated memory. More...
 
void ec_mbg_request_init (ec_mbg_request_t *req)
 Mbox Gateway request constructor. More...
 
void ec_mbg_request_clear (ec_mbg_request_t *req)
 Mbox Gateway request destructor. More...
 
int ec_mbg_request_alloc (ec_mbg_request_t *req, size_t size)
 Pre-allocates the data memory. More...
 
int ec_mbg_request_copy_data (ec_mbg_request_t *req, const uint8_t *source, size_t size)
 Copies Mbox Gateway data from an external source. More...
 
void ec_mbg_request_run (ec_mbg_request_t *req)
 Request to run. More...
 

Detailed Description

EtherCAT Mailbox Gateway request functions.

Definition in file mbox_gateway_request.c.

Function Documentation

◆ ec_mbg_request_clear_data()

void ec_mbg_request_clear_data ( ec_mbg_request_t req)

Free allocated memory.

Parameters
reqMbox Gateway request.

Definition at line 85 of file mbox_gateway_request.c.

◆ ec_mbg_request_init()

void ec_mbg_request_init ( ec_mbg_request_t req)

Mbox Gateway request constructor.

Parameters
reqMbox Gateway request.

Definition at line 56 of file mbox_gateway_request.c.

◆ ec_mbg_request_clear()

void ec_mbg_request_clear ( ec_mbg_request_t req)

Mbox Gateway request destructor.

Parameters
reqMbox Gateway request.

Definition at line 74 of file mbox_gateway_request.c.

◆ ec_mbg_request_alloc()

int ec_mbg_request_alloc ( ec_mbg_request_t req,
size_t  size 
)

Pre-allocates the data memory.

If the mem_size is already bigger than size, nothing is done.

Returns
0 on success, otherwise -ENOMEM.
Parameters
reqMbox Gateway request.
sizeData size to allocate.

Definition at line 106 of file mbox_gateway_request.c.

◆ ec_mbg_request_copy_data()

int ec_mbg_request_copy_data ( ec_mbg_request_t req,
const uint8_t *  source,
size_t  size 
)

Copies Mbox Gateway data from an external source.

If the mem_size is to small, new memory is allocated.

Return values
0Success.
<0Error code.
Parameters
reqMbox Gateway request.
sourceSource data.
sizeNumber of bytes in source.

Definition at line 135 of file mbox_gateway_request.c.

◆ ec_mbg_request_run()

void ec_mbg_request_run ( ec_mbg_request_t req)

Request to run.

Parameters
reqMbox Gateway request.

Definition at line 154 of file mbox_gateway_request.c.