添加自研批检仪检测命令

This commit is contained in:
ranchuan
2023-11-27 14:31:00 +08:00
parent b3a0d7b57c
commit a0b0f41c39
45 changed files with 3778 additions and 2628 deletions

View File

@@ -14,14 +14,14 @@ public:
}
virtual ~Codec() {}
// 返回true,则是一个完整的帧
// virtual bool packCheck(myarray data){return false;}
// virtual bool recvByte(int byte){return false;}
// virtual myarray encode(int srcAddr, int dstAddr, int cmd, myarray data){return myarray();}
// virtual myarray decode(int &srcAddr, int &dstAddr, int &cmd, myarray data){return myarray();}
virtual bool packCheck(myarray data)=0;
virtual bool recvByte(int byte)=0;
virtual myarray encode(int srcAddr, int dstAddr, int cmd, myarray data)=0;
virtual myarray decode(int &srcAddr, int &dstAddr, int &cmd, myarray data)=0;
// virtual bool packCheck(myarray data){return false;}
// virtual bool recvByte(int byte){return false;}
// virtual myarray encode(int srcAddr, int dstAddr, int cmd, myarray data){return myarray();}
// virtual myarray decode(int &srcAddr, int &dstAddr, int &cmd, myarray data){return myarray();}
virtual bool packCheck(myarray data) = 0;
virtual bool recvByte(int byte) = 0;
virtual myarray encode(int srcAddr, int dstAddr, int cmd, myarray data) = 0;
virtual myarray decode(int &srcAddr, int &dstAddr, int &cmd, myarray data) = 0;
myarray decode(int &srcAddr, int &dstAddr, int &cmd)
{
if (fullFrame == true)
@@ -37,31 +37,19 @@ protected:
myarray data;
};
Codec *codecFind(const char *name);
typedef struct
{
const char *name;
Codec *(*codec_get_fun)();
} codec_def;
typedef struct{
const char *name;
Codec *(*codec_get_fun)();
}codec_def;
#define codec_export(name_,fun_) \
#define codec_export(name_, fun_) \
const static char __codec_##name_##_name[] __attribute__((section(".rodata.codecstr"))) = #name_; \
__attribute__((used)) static codec_def _codec_##name_ __attribute__((section("codecdef")))={\
.name=__codec_##name_##_name,\
.codec_get_fun=fun_,\
}
__attribute__((used)) static codec_def _codec_##name_ __attribute__((section("codecdef"))) = { \
.name = __codec_##name_##_name, \
.codec_get_fun = fun_, \
}
#endif // CODEC_H