def __init__(self):
self.is_rendering = False
rospy.loginfo('\033[91m[%s]\033[0m waiting for bringup social_mind...'%rospy.get_name())
self.rd_memory = {}
try:
rospy.wait_for_service('social_events_memory/read_data')
self.rd_memory['social_events_memory'] = rospy.ServiceProxy('social_events_memory/read_data', ReadData)
rospy.wait_for_service('environmental_memory/read_data')
self.rd_memory['environmental_memory'] = rospy.ServiceProxy('environmental_memory/read_data', ReadData)
rospy.wait_for_service('system_events_memory/read_data')
self.rd_memory['system_events_memory'] = rospy.ServiceProxy('system_events_memory/read_data', ReadData)
except rospy.exceptions.ROSInterruptException as e:
rospy.logerr(e)
quit()
self.renderer_client = actionlib.SimpleActionClient('render_scene', RenderSceneAction)
rospy.loginfo('\033[91m[%s]\033[0m waiting for motion_renderer to start...'%rospy.get_name())
try:
self.renderer_client.wait_for_server()
except rospy.exceptions.ROSInterruptException as e:
quit()
rospy.Subscriber('reply', Reply, self.handle_domain_reply)
self.pub_log_item = rospy.Publisher('log', LogItem, queue_size=10)
self.pub_start_speech_recognizer = rospy.Publisher('speech_recognizer/start', Empty, queue_size=1)
self.pub_stop_speech_recognizer = rospy.Publisher('speech_recognizer/stop', Empty, queue_size=1)
self.pub_start_robot_speech = rospy.Publisher('robot_speech/start', Empty, queue_size=1)
self.pub_stop_robot_speech = rospy.Publisher('robot_speech/stop', Empty, queue_size=1)
self.is_speaking_started = False
rospy.Subscriber('start_of_speech', Empty, self.handle_start_of_speech)
rospy.Subscriber('end_of_speech', Empty, self.handle_end_of_speech)
# rospy.Subscriber('emotion_status', EmotionStatus, self.handle_emotion_status, queue_size=10)
# self.current_emotion = 'neutral'
# self.current_emotion_intensity = 1.0
self.pub_set_idle_motion = rospy.Publisher('idle_motion/set_enabled', Bool, queue_size=10)
self.pub_set_idle_motion.publish(True)
self.scene_queue = Queue.Queue(MAX_QUEUE_SIZE)
self.scene_handle_thread = Thread(target=self.handle_scene_queue)
self.scene_handle_thread.start()
rospy.loginfo("\033[91m[%s]\033[0m initialized." % rospy.get_name())
评论列表
文章目录