// // Created by zwsd // #pragma once #include "api/api.hpp" namespace iflytop { using namespace zcr; class IZCanReceiverListener { public: virtual void onRceivePacket(zcr_cmd_header_t *rxcmd, int32_t len) = 0; }; class IZCanReceiver { public: public: virtual void registerListener(IZCanReceiverListener *listener) = 0; virtual int32_t sendBufAck(zcr_cmd_header_t *rx_cmd_header, uint8_t *data, int32_t len) = 0; virtual int32_t sendAck(zcr_cmd_header_t *rx_cmd_header, int32_t *ackvar, int32_t nack) = 0; virtual int32_t sendErrorAck(zcr_cmd_header_t *rx_cmd_header, int32_t errorcode) = 0; virtual int32_t triggerEvent(zcr_cmd_header_t *rx_cmd_header, uint8_t *data, int32_t len) = 0; }; } // namespace iflytop