BUG FIX: Service uses 2 seperate Typenames for Request/response
This commit is contained in:
parent
854b62a379
commit
a2e00cf0f5
@ -60,7 +60,8 @@ package ros_config is
|
|||||||
0 => (
|
0 => (
|
||||||
node_id => 0,
|
node_id => 0,
|
||||||
SERVICENAME => gen_user_string("Service1"),
|
SERVICENAME => gen_user_string("Service1"),
|
||||||
TYPENAME => gen_user_string("Type3"),
|
RQ_TYPENAME => gen_user_string("Type3_Request"),
|
||||||
|
RR_TYPENAME => gen_user_string("Type3_Response"),
|
||||||
QOS => ROS_QOS_PROFILE_SERVICES_DEFAULT,
|
QOS => ROS_QOS_PROFILE_SERVICES_DEFAULT,
|
||||||
MAX_RQ_SIZE => 10,
|
MAX_RQ_SIZE => 10,
|
||||||
MAX_RR_SIZE => 10,
|
MAX_RR_SIZE => 10,
|
||||||
|
|||||||
@ -61,7 +61,8 @@ package ros_config is
|
|||||||
0 => (
|
0 => (
|
||||||
node_id => 0,
|
node_id => 0,
|
||||||
SERVICENAME => gen_user_string("add_two_ints"),
|
SERVICENAME => gen_user_string("add_two_ints"),
|
||||||
TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Request_"),
|
RQ_TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Request_"),
|
||||||
|
RR_TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Response_"),
|
||||||
QOS => ROS_QOS_PROFILE_TRANSIENT,
|
QOS => ROS_QOS_PROFILE_TRANSIENT,
|
||||||
MAX_RQ_SIZE => MAX_ADDTWOINTS_RQ_SIZE,
|
MAX_RQ_SIZE => MAX_ADDTWOINTS_RQ_SIZE,
|
||||||
MAX_RR_SIZE => MAX_ADDTWOINTS_RR_SIZE,
|
MAX_RR_SIZE => MAX_ADDTWOINTS_RR_SIZE,
|
||||||
|
|||||||
@ -61,7 +61,8 @@ package ros_config is
|
|||||||
0 => (
|
0 => (
|
||||||
node_id => 0,
|
node_id => 0,
|
||||||
SERVICENAME => gen_user_string("add_two_ints"),
|
SERVICENAME => gen_user_string("add_two_ints"),
|
||||||
TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Request_"),
|
RQ_TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Request_"),
|
||||||
|
RR_TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Response_"),
|
||||||
QOS => ROS_QOS_PROFILE_TRANSIENT,
|
QOS => ROS_QOS_PROFILE_TRANSIENT,
|
||||||
MAX_RQ_SIZE => MAX_ADDTWOINTS_RQ_SIZE,
|
MAX_RQ_SIZE => MAX_ADDTWOINTS_RQ_SIZE,
|
||||||
MAX_RR_SIZE => MAX_ADDTWOINTS_RR_SIZE,
|
MAX_RR_SIZE => MAX_ADDTWOINTS_RR_SIZE,
|
||||||
|
|||||||
@ -132,14 +132,15 @@ package body user_config is
|
|||||||
ret(index) := DEFAULT_READER_CONFIG;
|
ret(index) := DEFAULT_READER_CONFIG;
|
||||||
set_from_qos_profile(ROS_SERVICES(i).QOS, ret(index));
|
set_from_qos_profile(ROS_SERVICES(i).QOS, ret(index));
|
||||||
set_sim_timing(ret(index),SIMULATION_TIMING);
|
set_sim_timing(ret(index),SIMULATION_TIMING);
|
||||||
ret(index).TYPENAME := ROS_SERVICES(i).TYPENAME;
|
|
||||||
tmp := gen_fqn(ROS_NODES(ROS_SERVICES(i).node_id).namespace, ROS_NODES(ROS_SERVICES(i).node_id).name, ROS_SERVICES(i).SERVICENAME);
|
tmp := gen_fqn(ROS_NODES(ROS_SERVICES(i).node_id).namespace, ROS_NODES(ROS_SERVICES(i).node_id).name, ROS_SERVICES(i).SERVICENAME);
|
||||||
if (ROS_SERVICES(i).is_client) then
|
if (ROS_SERVICES(i).is_client) then
|
||||||
ret(index).TOPICNAME := concat("rr",concat(tmp,"Reply"));
|
ret(index).TOPICNAME := concat("rr",concat(tmp,"Reply"));
|
||||||
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RR_SIZE;
|
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RR_SIZE;
|
||||||
|
ret(index).TYPENAME := ROS_SERVICES(i).RR_TYPENAME;
|
||||||
else
|
else
|
||||||
ret(index).TOPICNAME := concat("rq",concat(tmp,"Request"));
|
ret(index).TOPICNAME := concat("rq",concat(tmp,"Request"));
|
||||||
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RQ_SIZE;
|
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RQ_SIZE;
|
||||||
|
ret(index).TYPENAME := ROS_SERVICES(i).RQ_TYPENAME;
|
||||||
end if;
|
end if;
|
||||||
index := index + 1;
|
index := index + 1;
|
||||||
end loop;
|
end loop;
|
||||||
@ -163,14 +164,15 @@ package body user_config is
|
|||||||
ret(index) := DEFAULT_WRITER_CONFIG;
|
ret(index) := DEFAULT_WRITER_CONFIG;
|
||||||
set_from_qos_profile(ROS_SERVICES(i).QOS, ret(index));
|
set_from_qos_profile(ROS_SERVICES(i).QOS, ret(index));
|
||||||
set_sim_timing(ret(index),SIMULATION_TIMING);
|
set_sim_timing(ret(index),SIMULATION_TIMING);
|
||||||
ret(index).TYPENAME := ROS_SERVICES(i).TYPENAME;
|
|
||||||
tmp := gen_fqn(ROS_NODES(ROS_SERVICES(i).node_id).namespace, ROS_NODES(ROS_SERVICES(i).node_id).name, ROS_SERVICES(i).SERVICENAME);
|
tmp := gen_fqn(ROS_NODES(ROS_SERVICES(i).node_id).namespace, ROS_NODES(ROS_SERVICES(i).node_id).name, ROS_SERVICES(i).SERVICENAME);
|
||||||
if (ROS_SERVICES(i).is_client) then
|
if (ROS_SERVICES(i).is_client) then
|
||||||
ret(index).TOPICNAME := concat("rq",concat(tmp,"Request"));
|
ret(index).TOPICNAME := concat("rq",concat(tmp,"Request"));
|
||||||
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RQ_SIZE;
|
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RQ_SIZE;
|
||||||
|
ret(index).TYPENAME := ROS_SERVICES(i).RQ_TYPENAME;
|
||||||
else
|
else
|
||||||
ret(index).TOPICNAME := concat("rr",concat(tmp,"Reply"));
|
ret(index).TOPICNAME := concat("rr",concat(tmp,"Reply"));
|
||||||
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RR_SIZE;
|
ret(index).MAX_PAYLOAD_SIZE := ROS_SERVICES(i).MAX_RR_SIZE;
|
||||||
|
ret(index).TYPENAME := ROS_SERVICES(i).RR_TYPENAME;
|
||||||
end if;
|
end if;
|
||||||
index := index + 1;
|
index := index + 1;
|
||||||
end loop;
|
end loop;
|
||||||
|
|||||||
@ -129,7 +129,8 @@ package ros_package is
|
|||||||
type ROS_SERVICE_TYPE is record
|
type ROS_SERVICE_TYPE is record
|
||||||
node_id : natural;
|
node_id : natural;
|
||||||
SERVICENAME : USER_STRING_TYPE;
|
SERVICENAME : USER_STRING_TYPE;
|
||||||
TYPENAME : USER_STRING_TYPE;
|
RQ_TYPENAME : USER_STRING_TYPE;
|
||||||
|
RR_TYPENAME : USER_STRING_TYPE;
|
||||||
QOS : ROS_QOS_PROFILE_TYPE;
|
QOS : ROS_QOS_PROFILE_TYPE;
|
||||||
MAX_RQ_SIZE : natural;
|
MAX_RQ_SIZE : natural;
|
||||||
MAX_RR_SIZE : natural;
|
MAX_RR_SIZE : natural;
|
||||||
|
|||||||
@ -61,7 +61,8 @@ package ros_config is
|
|||||||
0 => (
|
0 => (
|
||||||
node_id => 0,
|
node_id => 0,
|
||||||
SERVICENAME => gen_user_string("add_two_ints"),
|
SERVICENAME => gen_user_string("add_two_ints"),
|
||||||
TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Request_"),
|
RQ_TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Request_"),
|
||||||
|
RR_TYPENAME => gen_user_string("example_interfaces::srv::dds_::AddTwoInts_Response_"),
|
||||||
QOS => ROS_QOS_PROFILE_SERVICES_DEFAULT,
|
QOS => ROS_QOS_PROFILE_SERVICES_DEFAULT,
|
||||||
MAX_RQ_SIZE => MAX_ADDTWOINTS_RQ_SIZE,
|
MAX_RQ_SIZE => MAX_ADDTWOINTS_RQ_SIZE,
|
||||||
MAX_RR_SIZE => MAX_ADDTWOINTS_RR_SIZE,
|
MAX_RR_SIZE => MAX_ADDTWOINTS_RR_SIZE,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user