40 #include "datagram_pair.h" |
40 #include "datagram_pair.h" |
41 |
41 |
42 /*****************************************************************************/ |
42 /*****************************************************************************/ |
43 |
43 |
44 /** Datagram pair constructor. |
44 /** Datagram pair constructor. |
|
45 * |
|
46 * \return Zero on success, otherwise a negative error code. |
45 */ |
47 */ |
46 int ec_datagram_pair_init( |
48 int ec_datagram_pair_init( |
47 ec_datagram_pair_t *pair, /**< Datagram pair. */ |
49 ec_datagram_pair_t *pair, /**< Datagram pair. */ |
48 ec_domain_t *domain, /**< Parent domain. */ |
50 ec_domain_t *domain, /**< Parent domain. */ |
49 uint32_t logical_offset, |
51 uint32_t logical_offset, /**< Logical offset. */ |
50 uint8_t *data, |
52 uint8_t *data, /**< Data pointer. */ |
51 size_t data_size, /**< Data size. */ |
53 size_t data_size, /**< Data size. */ |
52 const unsigned int used[] /**< input/output use count. */ |
54 const unsigned int used[] /**< input/output use count. */ |
53 ) |
55 ) |
54 { |
56 { |
55 ec_device_index_t dev_idx; |
57 ec_device_index_t dev_idx; |
166 } |
168 } |
167 |
169 |
168 /*****************************************************************************/ |
170 /*****************************************************************************/ |
169 |
171 |
170 /** Process received data. |
172 /** Process received data. |
|
173 * |
|
174 * \return Working counter sum over all devices. |
171 */ |
175 */ |
172 uint16_t ec_datagram_pair_process( |
176 uint16_t ec_datagram_pair_process( |
173 ec_datagram_pair_t *pair, /**< Datagram pair. */ |
177 ec_datagram_pair_t *pair, /**< Datagram pair. */ |
174 uint16_t wc_sum[] /**< Working counter sums. */ |
178 uint16_t wc_sum[] /**< Working counter sums. */ |
175 ) |
179 ) |