ROSGObject is a collection of GObject
s and GtkWidget
wrappers
for the ROS IPC primitives. The following image contains
examples of the supported wrapper widgets
This includes wrapper widgets
- For displaying topics
- For displaying / changing parameter values
- For publishing topics
- For starting and stopping nodes
- For making service calls
ROSGObject also includes API for mixing the ROS and GObject mainloops in the same process, allowing GUI programs to be
killed by closing the window, or by rosnode kill /node
. A minimal example showing the interaction of
the two API is thus
rosgobject.init_node("minimal")
w = Gtk.Window()
w.connect("delete-event", rosgobject.main_quit)
rosgobject.spin()
A minimal working example of using the wrapper widgets
rosgobject.init_node("testminimal")
w = Gtk.Window()
w.connect("delete-event", rosgobject.main_quit)
e = rosgobject.wrappers.GtkEntryTopicWidget(
nodepath="/testnode/string",
msgclass=std_msgs.msg.String)
w.add(e.widget) #note the .widget!
w.show_all()
rosgobject.spin()