| | |
| | | |
| | | auto rawData = processData.getParamsRawData(); |
| | | std::vector<CParam> tempParams; |
| | | this->parsingParams((const char*)rawData.data(), rawData.size(), tempParams); |
| | | this->parsingProcessData((const char*)rawData.data(), rawData.size(), tempParams); |
| | | int n = processData.getTotalParameter(); |
| | | std::vector<CParam> params(tempParams.begin(), tempParams.begin() + min(n, (int)tempParams.size())); |
| | | pGlass->addParams(params); |
| | |
| | | params.push_back(CParam("检测速度", "", this->getName().c_str(), v * 0.001)); |
| | | i += 4; |
| | | |
| | | return (int)params.size(); |
| | | } |
| | | |
| | | int CMeasurement::parsingProcessData(const char* pszData, size_t size, std::vector<CParam>& params) |
| | | { |
| | | ASSERT(pszData); |
| | | if (size < 250) return 0; |
| | | int i = 0, v; |
| | | |
| | | |
| | | // 1.检测功能启用/禁用 |
| | | v = (pszData[i] & 0xff) | (pszData[i + 1] & 0xff) << 8; |
| | | params.push_back(CParam("检测功能启用/禁用", "", this->getName().c_str(), v)); |
| | | i += 2; |
| | | |
| | | // 2.检测速度 |
| | | v = (pszData[i] & 0xff) | (pszData[i + 1] & 0xff) << 8 | (pszData[i + 2] & 0xff) << 16 | (pszData[i + 3] & 0xff) << 24; |
| | | params.push_back(CParam("检测速度", "", this->getName().c_str(), v * 0.001)); |
| | | i += 4; |
| | | |
| | | // 3.检测1数据 |
| | | v = (pszData[i] & 0xff) | (pszData[i + 1] & 0xff) << 8 | (pszData[i + 2] & 0xff) << 16 | (pszData[i + 3] & 0xff) << 24; |
| | | params.push_back(CParam("检测1数据", "", this->getName().c_str(), v * 0.001)); |
| | |
| | | i += 4; |
| | | |
| | | return (int)params.size(); |
| | | } |
| | | |
| | | int CMeasurement::parsingProcessData(const char* pszData, size_t size, std::vector<CParam>& params) |
| | | { |
| | | return parsingParams(pszData, size, params); |
| | | } |
| | | |
| | | int CMeasurement::parsingSVData(const char* pszData, size_t size, std::vector<CParam>& params) |