This chapter provides guidance to the developers who want to optimize the access to the process data. The SDK uses by default the process data buffers provided by the Beckhoff Stack if none is provided. The PDO setter and getter functions listed in the PDO Help functions copy the process data from one memory area to another. Those functions have time and performance costs, therefore, the SDK allows to register callbacks to access the customer specific memory areas and enable zero copy behaviour.
The SDK API provides the customer the following API:
Function | Description |
---|---|
EC_API_SLV_cbRegisterPreSeqInputPDBuffer | Request a buffer to read input process data |
EC_API_SLV_cbRegisterPreSeqOutputPDBuffer | Request a buffer to write output process data |
EC_API_SLV_cbRegisterPostSeqInputPDBuffer | Triggered after input process data has been read |
EC_API_SLV_cbRegisterPostSeqOutputPDBuffer | Triggered after input process data has been written |
Using these functions, the end user can register its own callbacks and handle the process data on its own will. For instance, the customer can implement a triple buffer mechanism in a Dual Port RAM and the SDK will get and set the data from it.