Thanks for all your reply! It helps a lot.<br><br><div class="gmail_quote">On Wed, May 23, 2012 at 1:59 AM, Dirk Thomas <span dir="ltr"><<a href="mailto:dthomas@willowgarage.com" target="_blank">dthomas@willowgarage.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Further more, if I want to use qt as GUI of image processing(just to provide faster result showing and easier controlling), I cannot find<br>
a way to get it into a nodelet because qt UI must live in the main thread. So why ROS doesn't provide some more efficient data passing mechanism such as inter-process memory sharing? I think this will<br>
significantly increase large data flow performance.<br>
</blockquote>
<br></div>
Running nodelets together with Qt in one process works absolutely fine.<br>
ROS GUI (which is currently under development - <a href="https://kforge.ros.org/visualization/ros_gui" target="_blank">https://kforge.ros.org/<u></u>visualization/ros_gui</a>) does exactly that.<br>
The Qt application is written in Python but plugins (written in either Python and C++ are executed in the same process.<br>
C++-plugins are mapped to nodelets internally so each C++-plugin can pass messages efficiently using boost::shared_ptr.<span class="HOEnZb"><font color="#888888"><br>
<br>
Dirk</font></span><div class="HOEnZb"><div class="h5"><br>
______________________________<u></u>_________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org" target="_blank">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/<u></u>listinfo/ros-users</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Regards<br><br>University of Science and Technology of China<br>School of Computer Science and Technology<div>Multi-Agent System Lab<br><br>K.Chen</div>
<br>