You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.2 KiB
38 lines
1.2 KiB
#include "basic.hpp"
|
|
|
|
using namespace iflytop;
|
|
using namespace std;
|
|
uint16_t CanPacketRxBuffer::get_packetindex() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return cmdheader->packetindex;
|
|
}
|
|
uint16_t CanPacketRxBuffer::get_cmdid() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return cmdheader->cmdid;
|
|
}
|
|
uint8_t CanPacketRxBuffer::get_subcmdid() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return cmdheader->subcmdid;
|
|
}
|
|
uint8_t CanPacketRxBuffer::get_packetType() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return cmdheader->packetType;
|
|
}
|
|
uint8_t *CanPacketRxBuffer::get_data() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return cmdheader->data;
|
|
}
|
|
uint16_t CanPacketRxBuffer::get_datalen() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return rxdataSize - sizeof(Cmdheader_t);
|
|
}
|
|
bool CanPacketRxBuffer::iscmd(CmdID_t id) {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
uint16_t maincmdid = ((uint32_t)id >> 8) & 0xFFFF;
|
|
uint8_t subcmdId = ((uint32_t)id) & 0xFF;
|
|
return cmdheader->cmdid == maincmdid && cmdheader->subcmdid == subcmdId;
|
|
}
|
|
Cmdheader_t *CanPacketRxBuffer::get_cmdheader() {
|
|
Cmdheader_t *cmdheader = (Cmdheader_t *)rxdata;
|
|
return cmdheader;
|
|
}
|