GrpcTransfer.cpp 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. #include "GrpcTransfer.h"
  2. DataList* MessageServiceClient::R360SendMessage(DataPackagePtr pkg)
  3. {
  4. DataList dataList;
  5. EmbeddedData *embeddedData = dataList.add_data();
  6. embeddedData->set_usb_camera_index(pkg->nCameraID);
  7. // 填充图片数据(示例中使用字符串模拟)
  8. std::string tempImageData(pkg->pJpegData, pkg->nJpegSize);
  9. embeddedData->set_image(tempImageData);
  10. embeddedData->set_degree(pkg->dDegree);
  11. for (int i = 0; i < pkg->Result.count; ++i)
  12. {
  13. // 添加报警信息
  14. Alarm *alarm = embeddedData->add_alarm();
  15. alarm->set_x(pkg->Result.results[i].box.left);
  16. alarm->set_y(pkg->Result.results[i].box.top);
  17. alarm->set_w(pkg->Result.results[i].box.right - pkg->Result.results[i].box.left);
  18. alarm->set_h(pkg->Result.results[i].box.bottom - pkg->Result.results[i].box.top);
  19. alarm->set_score(pkg->Result.results[i].prop);
  20. alarm->set_type(R360::AlarmType(pkg->Result.results[i].cls_id)); // 使用枚举值
  21. }
  22. m_DataList = dataList;
  23. return &m_DataList;
  24. }