/** * @file include/di/can/lowlevel.h * @brief Lowlevel send/recv callback wrapper * @date Oct 12, 2016 * @author jjacobs * @copyright 2015 Dual Inventive Technology Centre B.V. * * descr */ #ifndef LIBDI_INCLUDE_DI_CAN_LOWLEVEL_H_ #define LIBDI_INCLUDE_DI_CAN_LOWLEVEL_H_ #include struct di_can_ctx; struct di_can_frame_tx; #ifdef __cplusplus extern "C" { #endif /** * Send lowlevel CAN frame */ di_errno_t di_can_lowlevel_send(struct di_can_ctx *ctx, struct di_can_frame_tx *frame); /** * Receive lowlevel CAN packet, used to feed packets from platform * specific can recv callback. The data is copied into the * can protocol stack (in the msg subsystem). * @param ctx CAN context * @note This function should be called periodicly to feed packets * into the CAN stack (e.g from CAN receive thread). */ di_errno_t di_can_lowlevel_recv(struct di_can_ctx *ctx); #ifdef __cplusplus } #endif #endif /* LIBDI_INCLUDE_DI_CAN_LOWLEVEL_H_ */