1717import tf_conversions as tf_c
1818# Driver services for ur5
1919#from robotiq_c_model_control.srv import *
20- from std_srvs .srv import Empty
20+ # from std_srvs.srv import Empty
21+ import os
2122
2223colors = ColorOptions ().colors
2324# Node Wrappers -----------------------------------------------------------
@@ -28,7 +29,14 @@ def __init__(self):
2829 self .title .setStyleSheet ('background-color:' + colors ['purple' ].normal + ';color:#ffffff' )
2930 self .wait_finish = NamedField ('Wait' , '' ,'purple' )
3031 self .wait_finish .set_field ('1' )
31- self .note = NoteField ('(1 = true, 0 = false)' ,'purple' )
32+
33+ self .message_contents = NamedField ('message' ,'' , 'purple' )
34+ self .message_topic = NamedField ('Rostopic' ,'' , 'purple' )
35+ self .message_topic .set_field ('info' )
36+
37+ self .note = NoteField ('(1 = true, 0 = false)\n rostopic has prefix: /costar/messages/' ,'purple' )
38+ self .layout_ .addWidget (self .message_contents )
39+ self .layout_ .addWidget (self .message_topic )
3240 self .layout_ .addWidget (self .wait_finish )
3341 self .layout_ .addWidget (self .note )
3442
@@ -38,18 +46,22 @@ def load_data(self,data):
3846 pass
3947 def generate (self ):
4048 if all ([self .name .full (),self .wait_finish .full ()]):
41- return NodeActionPublishMessage (self .get_name (),self .get_label (),int (self .wait_finish .get ()))
49+ full_topic_name = os .path .join ('/costar/messages/' ,str (self .message_topic .get ()))
50+ return NodeActionPublishMessage (self .get_name (),str (self .message_contents .get ()), full_topic_name , int (self .wait_finish .get ()))
4251 else :
4352 rospy .logerr ('check that all menu items are properly selected for this node' )
4453 return 'ERROR: check that all menu items are properly selected for this node'
4554
4655# Nodes -------------------------------------------------------------------
4756class NodeActionPublishMessage (ServiceNode ):
48- def __init__ (self ,name ,label ,wait_finish ):
49- L = "Publish Message: " + label
57+ def __init__ (self ,name ,message_contents , topic_name ,wait_finish ):
58+ L = "Publish Message: " + message_contents + " \n to " + topic_name
5059 super (NodeActionPublishMessage ,self ).__init__ (name ,L ,colors ['purple' ].normal ,"Message Server" )
51- self .message_pub = rospy .Publisher ('/instructor/message_server' , String ,queue_size = 100 )
52- self .message_to_publish = label
60+ # if topic_name == '':
61+ # self.message_pub = rospy.Publisher('/instructor/message_server', String,queue_size=100)
62+ # else:
63+ self .message_pub = rospy .Publisher (topic_name , String ,queue_size = 100 )
64+ self .message_to_publish = message_contents
5365 if wait_finish == 0 :
5466 self .wait_finish = False
5567 else :
0 commit comments