18#error "EFI_CAN_SERIAL requires EFI_CAN_SUPPORT"
32 void flush()
override;
37 void writeCrcPacket(uint8_t responseCode,
const uint8_t* buf,
size_t size,
bool allowLongPackets =
false)
override;
41void CanTsChannel::start() {
52void CanTsChannel::stop() {
55void CanTsChannel::writeCrcPacket(uint8_t responseCode,
const uint8_t* buf,
size_t size,
bool allowLongPackets) {
56#ifdef TS_CAN_DEVICE_SHORT_PACKETS_IN_ONE_FRAME
59 if ((
size + 1) <= 7) {
60 write(&responseCode, 1,
false);
73void CanTsChannel::write(
const uint8_t*
buffer,
size_t size,
bool) {
77size_t CanTsChannel::readTimeout(uint8_t*
buffer,
size_t size,
int timeout) {
82void CanTsChannel::flush() {
86bool CanTsChannel::isReady()
const {
bool getIsCanEnabled(void)
virtual bool isReady() const
virtual void writeCrcPacket(uint8_t responseCode, const uint8_t *buf, size_t size, bool allowLongPackets=false)
virtual void write(const uint8_t *buffer, size_t size, bool isEndOfPacket=false)=0
virtual size_t readTimeout(uint8_t *buffer, size_t size, int timeout)=0
virtual TsChannelBase * setupChannel()=0
static bool write(void *, uint32_t, const uint8_t *, uint32_t)
static constexpr engine_configuration_s * engineConfiguration
bool warning(ObdCode code, const char *fmt,...)
@ CUSTOM_ERR_CAN_CONFIGURATION
msg_t canStreamReceiveTimeout(size_t *np, uint8_t *rxbuf, sysinterval_t timeout)
msg_t canStreamAddToTxTimeout(size_t *np, const uint8_t *txbuf, sysinterval_t timeout)
msg_t canStreamFlushTx(sysinterval_t timeout)
static BigBufferHandle buffer
static CanTsThread canTsThread
static CanTsChannel canChannel