12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #include <grpcpp/grpcpp.h>
- #include "../GrpcTransfer/ImageService.grpc.pb.h"
- #include "../DataManager/DataPackage.h"
- using grpc::Channel;
- using grpc::ClientContext;
- using grpc::Status;
- using R360::Alarm;
- using R360::DataList;
- using R360::EmbeddedData;
- using R360::Empty;
- using R360::MessageService;
- class MessageServiceClient
- {
- public:
- explicit MessageServiceClient(){}
- // void R360SendMessage(char *pic)
- // {
- // ClientContext context;
- // Empty response;
- // std::unique_ptr<grpc::ClientWriter<DataList>> writer(
- // stub_->R360SendMessage(&context, &response));
- // // 构造第一个DataList消息
- // DataList data_list;
- // EmbeddedData *embeddedData = data_list.add_data();
- // embeddedData->set_usb_camera_index(1);
- // // 填充图片数据(示例中使用字符串模拟)
- // embeddedData->set_image(pic);
- // embeddedData->set_degree(90);
- // // 添加报警信息
- // Alarm *alarm = embeddedData->add_alarm();
- // alarm->set_x(100);
- // alarm->set_y(150);
- // alarm->set_w(50);
- // alarm->set_h(50);
- // alarm->set_score(0.95);
- // alarm->set_type(R360::UAV); // 使用枚举值
- // if (!writer->Write(data_list))
- // {
- // std::cerr << "写入消息失败" << std::endl;
- // }
- // // 如有需要,可发送更多消息...
- // // DataList another_data_list;
- // // writer->Write(another_data_list);
- // /*writer->WritesDone();
- // Status status = writer->Finish();
- // if (status.ok())
- // {
- // std::cout << "R360SendMessage RPC 调用成功" << std::endl;
- // }
- // else
- // {
- // std::cout << "R360SendMessage RPC 调用失败: " << status.error_message() << std::endl;
- // }*/
- // }
- DataList* R360SendMessage(DataPackage *pkg);
- private:
- DataList m_DataList;
- };
|