<div dir="ltr">Wild guess, there is a but in orogen when the typedef is not defined in the project where the type is defined.<div><br></div><div>The only workaround I see right now is for you to use the std::vector<> (i.e. not the typedef) on the port for the time being. Please open a ticket on <a href="http://rock.opendfki.de">rock.opendfki.de</a> as well.</div>
<div><br></div><div>Sylvain</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, May 14, 2014 at 10:03 AM, Ajish Babu <span dir="ltr"><<a href="mailto:ajish.babu@dfki.de" target="_blank">ajish.babu@dfki.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Hi,<br>
<br>
the line triggering the error is <br>
<i><small>using_task_library "cog_support_polygon"</small></i><br>
which contains the port with this datatype. The complete file
looks like<br>
<br>
<i><small>name "sherpa_tt_deployments"<br>
<br>
using_task_library "trajectory_generation"<br>
using_task_library "cog_support_polygon"<br>
using_task_library "sherpa_tt_mcs"<br>
using_task_library "sams"<br>
<br>
deployment 'sherpa_tt_kinematics' do<br>
task("self_collision_viz", "sams::SelfCollisionViz").<br>
realtime.priority(40)<br>
<br>
task("self_collision_ctrl", "sams::SelfCollisionCtrl").<br>
realtime.priority(70)<br>
<br>
task("self_collision_check", "sams::SelfCollisionCheck").<br>
realtime.priority(70)<br>
<br>
task("cog_support_polygon", "cog_support_polygon::Task").<br>
realtime.priority(70)<br>
<br>
task("rml_position", "trajectory_generation::Task").<br>
realtime.priority(80).<br>
periodic(0.01)<br>
<br>
task("sherpa_tt_mcs", "sherpa_tt_mcs::Task" ).<br>
realtime.priority(80)<br>
<br>
add_default_logger<br>
end</small></i><br>
<br>
and the cog_support_polygon.orogen looks like<br>
<br>
<i><small>name "cog_support_polygon"<br>
<br>
using_library "kdl_parser"<br>
using_library "cog_support_polygon"<br>
import_types_from "base"<br>
import_types_from "cog_support_polygonTypes.hpp"<br>
import_types_from "cog_support_polygon/SupportPolygon.hpp"<br>
<br>
task_context "Task" do<br>
needs_configuration<br>
<br>
runtime_states 'WITHIN_SAFETY_MARGIN', <br>
'OUTSIDE_SAFETY_MARGIN',<br>
'OUTSIDE_SUPPORT_POLYGON'<br>
<br>
#Properties <br>
property("urdf_file", "/std/string").<br>
doc("UDRF file for the robot")<br>
<br>
property("safety_margin", "/double", 0.0).<br>
doc("Minimum allowed distance to edge of convex hull")<br>
<br>
#Input ports<br>
input_port("enabled", "bool").<br>
doc("Set true to enable to modify command")<br>
<br>
input_port("joints_command", "/base/commands/Joints").<br>
doc("Current joint state")<br>
<br>
input_port("body_orientation", "/base/Quaterniond").<br>
doc("Orientation of the body w.r.t the world CS")<br>
<br>
input_port("support_points", "</small></i><i><small>
/cog_support_polygon/PolygonPoints3d").<br>
doc("Points which are part of the support")<br>
<br>
#Output ports<br>
output_port("modified_joints_command",
"/base/commands/Joints").<br>
doc("Reference for joints")<br>
<br>
output_port("support_polygon_info",
"/cog_support_polygon/SupportPolygonInfo").<br>
doc("Data output from the support polygon")<br>
<br>
# Computed time for one cycle in seconds<br>
output_port "actual_cycle_time", "/double"<br>
<br>
port_driven 'joints_command'<br>
end</small></i><b><small><br>
<br>
</small></b>Now it is running without using the typedef !<b><small><br>
<br>
</small></b><small><big>regards<span class="HOEnZb"><font color="#888888"><br>
Ajish</font></span></big></small><div><div class="h5"><b><small><br>
</small></b><br>
<br>
On 05/13/2014 11:39 PM, Sylvain Joyeux wrote:<br>
</div></div></div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">What is unclear is what generates the error from
the orogen file. What is inside the sherpa_tt_deployments.orogen
file ? (especially in the first few lines ...)
<div><br>
</div>
<div>Sylvain</div>
</div>
<div class="gmail_extra">
<br>
<br>
<div class="gmail_quote">On Tue, May 13, 2014 at 3:31 PM, Ajish
Babu <span dir="ltr"><<a href="mailto:ajish.babu@dfki.de" target="_blank">ajish.babu@dfki.de</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> Hi all,<br>
<br>
I was trying to use the type <b><small><br>
typedef std::vector< base::Vector3d >
PolygonPoints3d;</small></b> <br>
as port type in orogen module. The module builds without
problems. <br>
<br>
But when I try to build the deployment it gives an error <br>
<small><b>sherpa_tt_deployments.orogen:4: type
/cog_support_polygon/PolygonPoints3d is not declared
(Orocos::Generation::ConfigError). </b></small><br>
<br>
What I understand now is that the type <b><small>std::vector<
base::Vector3d > </small></b><small><big>is
already in the typekit in
base/orogen/types/base.orogen. I could not find any
warnings about it.<br>
<br>
Does anybody know what is going on? Why was there no
problem in building the module? Why would another
typedef create such a problem?<br>
<br>
regards<span><font color="#888888"><br>
Ajish<br>
</font></span></big></small> </div>
<br>
_______________________________________________<br>
Rock-dev mailing list<br>
<a href="mailto:Rock-dev@dfki.de" target="_blank">Rock-dev@dfki.de</a><br>
<a href="http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev" target="_blank">http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div></div></div>
</blockquote></div><br></div>