现在slam车的主控板和上位机一般都是通过串口来通信,接收到的数据直接进入ringbuffer队列里,主控需要从队列里提取每帧数据然后转发给执行部件,我这里采用单帧长度的循环链表来筛选指定帧数据再转发。
class ChainNode {
public:
ChainNode* m_next;
ChainNode* m_prev;
int data;
};
class ChainList {
public:
ChainList(int list_size);
~ChainList();
public:
ChainNode *ChainHead;
void ChainSetData(int mValue);
void ChainPrevious();
voi