|
@@ -0,0 +1,138 @@
|
|
|
+//
|
|
|
+// Created by huli on 2021/3/24.
|
|
|
+//
|
|
|
+
|
|
|
+#include "dispatch_coordinates.h"
|
|
|
+#include "../tool/proto_tool.h"
|
|
|
+
|
|
|
+
|
|
|
+Dispatch_coordinates::Dispatch_coordinates()
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+Dispatch_coordinates::~Dispatch_coordinates()
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+//初始化 调度的坐标系 模块。如下三选一
|
|
|
+Error_manager Dispatch_coordinates::dispatch_coordinates_init()
|
|
|
+{
|
|
|
+ return dispatch_coordinates_init_from_protobuf(DISPATCH_COORDINATES_PARAMETER_PATH);
|
|
|
+}
|
|
|
+
|
|
|
+//初始化 调度的坐标系 模块。从文件读取
|
|
|
+Error_manager Dispatch_coordinates::dispatch_coordinates_init_from_protobuf(std::string prototxt_path)
|
|
|
+{
|
|
|
+ Dispatch_proto::Dispatch_coordinates_parameter_all t_dispatch_coordinates_parameter_all;
|
|
|
+ if(! proto_tool::read_proto_param(prototxt_path,t_dispatch_coordinates_parameter_all) )
|
|
|
+ {
|
|
|
+ return Error_manager(DISPATCH_COORDINATES_READ_PROTOBUF_ERROR,MINOR_ERROR,
|
|
|
+ "Dispatch_coordinates read_proto_param failed");
|
|
|
+ }
|
|
|
+
|
|
|
+ return dispatch_coordinates_init_from_protobuf(t_dispatch_coordinates_parameter_all);
|
|
|
+}
|
|
|
+
|
|
|
+//初始化 调度的坐标系 模块。从protobuf读取
|
|
|
+Error_manager Dispatch_coordinates::dispatch_coordinates_init_from_protobuf(Dispatch_proto::Dispatch_coordinates_parameter_all& dispatch_coordinates_parameter_all)
|
|
|
+{
|
|
|
+ LOG(INFO) << " ---Dispatch_coordinates::dispatch_coordinates_init_from_protobuf() run--- "<< this;
|
|
|
+ Error_manager t_error;
|
|
|
+ int size;
|
|
|
+
|
|
|
+ size = dispatch_coordinates_parameter_all.packspace_coordinates_parameters_size();
|
|
|
+ for (int i = 0; i < size; ++i)
|
|
|
+ {
|
|
|
+ Point3D_tool::Point3D t_point3d;
|
|
|
+ int id = dispatch_coordinates_parameter_all.packspace_coordinates_parameters(i).id();
|
|
|
+ t_point3d.x = dispatch_coordinates_parameter_all.packspace_coordinates_parameters(i).x();
|
|
|
+ t_point3d.y = dispatch_coordinates_parameter_all.packspace_coordinates_parameters(i).y();
|
|
|
+ t_point3d.z = dispatch_coordinates_parameter_all.packspace_coordinates_parameters(i).z();
|
|
|
+ m_packspace_coordinates[id] = t_point3d;
|
|
|
+ }
|
|
|
+
|
|
|
+ size = dispatch_coordinates_parameter_all.passageway_coordinates_parameters_size();
|
|
|
+ for (int i = 0; i < size; ++i)
|
|
|
+ {
|
|
|
+ Point3D_tool::Point3D t_point3d;
|
|
|
+ int id = dispatch_coordinates_parameter_all.passageway_coordinates_parameters(i).id();
|
|
|
+ t_point3d.x = dispatch_coordinates_parameter_all.passageway_coordinates_parameters(i).x();
|
|
|
+ t_point3d.y = dispatch_coordinates_parameter_all.passageway_coordinates_parameters(i).y();
|
|
|
+ t_point3d.z = dispatch_coordinates_parameter_all.passageway_coordinates_parameters(i).z();
|
|
|
+ m_passageway_coordinates[id] = t_point3d;
|
|
|
+ }
|
|
|
+
|
|
|
+ size = dispatch_coordinates_parameter_all.carrier_coordinates_parameters_size();
|
|
|
+ for (int i = 0; i < size; ++i)
|
|
|
+ {
|
|
|
+ Point3D_tool::Point3D t_point3d;
|
|
|
+ int id = dispatch_coordinates_parameter_all.carrier_coordinates_parameters(i).id();
|
|
|
+ t_point3d.x = dispatch_coordinates_parameter_all.carrier_coordinates_parameters(i).x();
|
|
|
+ t_point3d.y = dispatch_coordinates_parameter_all.carrier_coordinates_parameters(i).y();
|
|
|
+ t_point3d.z = dispatch_coordinates_parameter_all.carrier_coordinates_parameters(i).z();
|
|
|
+ m_carrier_coordinates[id] = t_point3d;
|
|
|
+ }
|
|
|
+
|
|
|
+ size = dispatch_coordinates_parameter_all.catcher_coordinates_parameters_size();
|
|
|
+ for (int i = 0; i < size; ++i)
|
|
|
+ {
|
|
|
+ Point3D_tool::Point3D t_point3d;
|
|
|
+ int id = dispatch_coordinates_parameter_all.passageway_coordinates_parameters(i).id();
|
|
|
+ t_point3d.x = dispatch_coordinates_parameter_all.catcher_coordinates_parameters(i).x();
|
|
|
+ t_point3d.y = dispatch_coordinates_parameter_all.catcher_coordinates_parameters(i).y();
|
|
|
+ t_point3d.z = dispatch_coordinates_parameter_all.catcher_coordinates_parameters(i).z();
|
|
|
+ m_catcher_coordinates[id] = t_point3d;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ m_carrier_box.x_min = dispatch_coordinates_parameter_all.carrier_box_parameters().x_min();
|
|
|
+ m_carrier_box.x_max = dispatch_coordinates_parameter_all.carrier_box_parameters().x_max();
|
|
|
+ m_carrier_box.y_min = dispatch_coordinates_parameter_all.carrier_box_parameters().y_min();
|
|
|
+ m_carrier_box.y_max = dispatch_coordinates_parameter_all.carrier_box_parameters().y_max();
|
|
|
+ m_carrier_box.z_min = dispatch_coordinates_parameter_all.carrier_box_parameters().z_min();
|
|
|
+ m_carrier_box.z_max = dispatch_coordinates_parameter_all.carrier_box_parameters().z_max();
|
|
|
+
|
|
|
+ m_catcher_box.x_min = dispatch_coordinates_parameter_all.catcher_box_parameters().x_min();
|
|
|
+ m_catcher_box.x_max = dispatch_coordinates_parameter_all.catcher_box_parameters().x_max();
|
|
|
+ m_catcher_box.y_min = dispatch_coordinates_parameter_all.catcher_box_parameters().y_min();
|
|
|
+ m_catcher_box.y_max = dispatch_coordinates_parameter_all.catcher_box_parameters().y_max();
|
|
|
+ m_catcher_box.z_min = dispatch_coordinates_parameter_all.catcher_box_parameters().z_min();
|
|
|
+ m_catcher_box.z_max = dispatch_coordinates_parameter_all.catcher_box_parameters().z_max();
|
|
|
+
|
|
|
+ m_catcher_b_min = dispatch_coordinates_parameter_all.catcher_b_min();
|
|
|
+ m_catcher_b_max = dispatch_coordinates_parameter_all.catcher_b_max();
|
|
|
+ m_catcher_d1_min = dispatch_coordinates_parameter_all.catcher_d1_min();
|
|
|
+ m_catcher_d1_max = dispatch_coordinates_parameter_all.catcher_d1_max();
|
|
|
+ m_catcher_d2_min = dispatch_coordinates_parameter_all.catcher_d2_min();
|
|
|
+ m_catcher_d2_max = dispatch_coordinates_parameter_all.catcher_d2_max();
|
|
|
+
|
|
|
+ std::cout << " huli test :::: " << " m_packspace_coordinates.size() = " << m_packspace_coordinates.size() << std::endl;
|
|
|
+ std::cout << " huli test :::: " << " m_passageway_coordinates.size() = " << m_passageway_coordinates.size() << std::endl;
|
|
|
+ std::cout << " huli test :::: " << " m_carrier_coordinates.size() = " << m_carrier_coordinates.size() << std::endl;
|
|
|
+ std::cout << " huli test :::: " << " m_catcher_coordinates.size() = " << m_catcher_coordinates.size() << std::endl;
|
|
|
+
|
|
|
+/*
|
|
|
+ if ( communication_parameter_all.communication_parameters().has_bind_string() )
|
|
|
+ {
|
|
|
+ t_error = communication_bind(communication_parameter_all.communication_parameters().bind_string());
|
|
|
+ if ( t_error != Error_code::SUCCESS )
|
|
|
+ {
|
|
|
+ return t_error;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ for(int i=0;i<communication_parameter_all.communication_parameters().connect_string_vector_size();++i)
|
|
|
+ {
|
|
|
+ t_error = communication_connect( communication_parameter_all.communication_parameters().connect_string_vector(i) );
|
|
|
+ if ( t_error != Error_code::SUCCESS )
|
|
|
+ {
|
|
|
+ return t_error;
|
|
|
+ }
|
|
|
+ }
|
|
|
+*/
|
|
|
+
|
|
|
+ return Error_code::SUCCESS;
|
|
|
+}
|