Line data Source code
1 : /* 2 : socketcan transport for SITL CAN 3 : */ 4 : #pragma once 5 : 6 : #include "CAN_Transport.h" 7 : 8 : #if HAL_NUM_CAN_IFACES && HAL_CAN_WITH_SOCKETCAN 9 : 10 : class CAN_SocketCAN : public CAN_Transport { 11 : public: 12 : bool init(uint8_t instance) override; 13 : bool send(const AP_HAL::CANFrame &frame) override; 14 : bool receive(AP_HAL::CANFrame &frame) override; 15 0 : int get_read_fd(void) const override { 16 0 : return fd; 17 : } 18 : 19 : private: 20 : int fd = -1; 21 : }; 22 : 23 : #endif // HAL_NUM_CAN_IFACES