145 lines
3.9 KiB
C++
145 lines
3.9 KiB
C++
#include "YLRCommand.h"
|
|
|
|
|
|
|
|
YLRCommand::YLRCommand(string strcom)
|
|
:m_Command(strcom)
|
|
{
|
|
}
|
|
|
|
|
|
YLRCommand::~YLRCommand()
|
|
{
|
|
}
|
|
|
|
|
|
int YLRCommand::GetRequestSequence(unsigned char* bseq)
|
|
{
|
|
string str = "";
|
|
str = m_Command + "\r";
|
|
memcpy(bseq, str.c_str(), str.length());
|
|
return str.length();
|
|
}
|
|
|
|
|
|
YLRReadCommand::YLRReadCommand(string command):YLRCommand(command)
|
|
,m_Value("")
|
|
{
|
|
|
|
}
|
|
|
|
YLRReadCommand::~YLRReadCommand()
|
|
{
|
|
|
|
}
|
|
|
|
|
|
bool YLRReadCommand::Verify(unsigned char* rseq, int dlength)
|
|
{
|
|
if (dlength <= 0)return false;
|
|
char data[1024];
|
|
memset(data, '\0', sizeof(data));
|
|
memcpy(data, rseq, dlength);
|
|
if (data[dlength - 1] != '\r')return false;
|
|
bool rel = true;
|
|
for (size_t i=0; i < m_Command.length();i++) {
|
|
if (rseq[i] != m_Command[i]) {
|
|
rel = false;
|
|
break;
|
|
}
|
|
}
|
|
if (!rel)return false;
|
|
bool isfind = false;
|
|
char value[64];
|
|
int valueFlag = 0;
|
|
memset(value, '\0', sizeof(value));
|
|
for (int i = 0; i < dlength;i++) {
|
|
if(data[i] == ' ')continue;
|
|
if (data[i] == '\r')continue;
|
|
if (data[i] == ':') {
|
|
isfind = true;
|
|
continue;
|
|
}
|
|
|
|
if (isfind && (valueFlag<sizeof(value))) {
|
|
value[valueFlag]=data[i];
|
|
valueFlag++;
|
|
}
|
|
}
|
|
m_Value = string(value);
|
|
return rel;
|
|
}
|
|
|
|
YLREchoCommand::YLREchoCommand(string command):YLRCommand(command)
|
|
{
|
|
|
|
}
|
|
|
|
YLREchoCommand::~YLREchoCommand()
|
|
{
|
|
|
|
}
|
|
|
|
bool YLREchoCommand::Verify(unsigned char* rseq, int dlength)
|
|
{
|
|
if (dlength <= 0)return false;
|
|
char data[1024];
|
|
memset(data, '\0', sizeof(data));
|
|
memcpy(data, rseq, dlength);
|
|
if (data[dlength - 1] != '\r')return false;
|
|
bool rel = true;
|
|
for (size_t i = 0; i < m_Command.length(); i++) {
|
|
if (rseq[i] != m_Command[i]) {
|
|
rel = false;
|
|
break;
|
|
}
|
|
}
|
|
return rel;
|
|
}
|
|
|
|
/*const string YLRCommand::COMMAND_YLR_ABF="ABF";
|
|
const string YLRCommand::COMMAND_YLR_ABN = "ABN";
|
|
const string YLRCommand::COMMAND_YLR_DEABC = "DEABC";
|
|
const string YLRCommand::COMMAND_YLR_DGM = "DGM";
|
|
const string YLRCommand::COMMAND_YLR_DLE = "DLE";
|
|
const string YLRCommand::COMMAND_YLR_DMOD = "DMOD";
|
|
const string YLRCommand::COMMAND_YLR_DPM = "DPM";
|
|
const string YLRCommand::COMMAND_YLR_DWPM = "DWPM";
|
|
const string YLRCommand::COMMAND_YLR_EEABC = "EEABC";
|
|
const string YLRCommand::COMMAND_YLR_EEC = "EEC";
|
|
const string YLRCommand::COMMAND_YLR_EGM = "EGM";
|
|
const string YLRCommand::COMMAND_YLR_ELE = "ELE";
|
|
const string YLRCommand::COMMAND_YLR_EMOD = "EMOD";
|
|
const string YLRCommand::COMMAND_YLR_EMOFF = "EMOFF";
|
|
const string YLRCommand::COMMAND_YLR_EMON = "EMON";
|
|
const string YLRCommand::COMMAND_YLR_EPM = "EPM";
|
|
const string YLRCommand::COMMAND_YLR_EWPM = "EWPM";
|
|
const string YLRCommand::COMMAND_YLR_LFP = "LFP";
|
|
const string YLRCommand::COMMAND_YLR_PCFG = "PCFG";
|
|
const string YLRCommand::COMMAND_YLR_PRLS = "PRLS";
|
|
const string YLRCommand::COMMAND_YLR_PRSEL = "PRSEL";
|
|
const string YLRCommand::COMMAND_YLR_RBAUD = "RBAUD";
|
|
const string YLRCommand::COMMAND_YLR_RCS = "RCS";
|
|
const string YLRCommand::COMMAND_YLR_RCT = "RCT";
|
|
const string YLRCommand::COMMAND_YLR_RERR = "RERR";
|
|
const string YLRCommand::COMMAND_YLR_RET = "RET";
|
|
const string YLRCommand::COMMAND_YLR_RFV = "RFV";
|
|
const string YLRCommand::COMMAND_YLR_RIP = "RIP";
|
|
const string YLRCommand::COMMAND_YLR_RMASK = "RMASK";
|
|
const string YLRCommand::COMMAND_YLR_RMEC = "RMEC";
|
|
const string YLRCommand::COMMAND_YLR_RNC = "RNC";
|
|
const string YLRCommand::COMMAND_YLR_ROP = "ROP";
|
|
const string YLRCommand::COMMAND_YLR_RPP = "RPP";
|
|
const string YLRCommand::COMMAND_YLR_RPRR = "RPRR";
|
|
const string YLRCommand::COMMAND_YLR_RPW = "RPW";
|
|
const string YLRCommand::COMMAND_YLR_RSN = "RSN";
|
|
const string YLRCommand::COMMAND_YLR_SBAUD = "SBAUD";
|
|
const string YLRCommand::COMMAND_YLR_SDC = "SDC";
|
|
const string YLRCommand::COMMAND_YLR_SMASK = "SMASK";
|
|
const string YLRCommand::COMMAND_YLR_SPRR = "SPRR";
|
|
const string YLRCommand::COMMAND_YLR_SPW = "SPW";
|
|
const string YLRCommand::COMMAND_YLR_SQLS = "SQLS";
|
|
const string YLRCommand::COMMAND_YLR_SQSEL = "SQSEL";
|
|
const string YLRCommand::COMMAND_YLR_STA = "STA";
|
|
const string YLRCommand::COMMAND_YLR_SIP = "SIP";
|
|
const string YLRCommand::COMMAND_YLR_UFP = "UFP";*/ |