Advertisement
Guest User

Untitled

a guest
Jan 17th, 2017
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. import roslib; roslib.load_manifest('tf2_ros')
  2. import rospy
  3. import rospy
  4. import tf2_ros
  5. import threading
  6. from tf2_msgs.msg import TFMessage
  7.  
  8. class TransformListener():
  9. def __init__(self, buffer):
  10. self.buffer = buffer
  11. self.tf_sub = rospy.Subscriber("/tf", TFMessage, self.callback)
  12. self.tf_static_sub = rospy.Subscriber("/tf_static", TFMessage, self.static_callback)
  13.  
  14. def __del__(self):
  15. self.unregister()
  16.  
  17. def unregister(self):
  18. self.tf_sub.unregister()
  19. self.tf_static_sub.unregister()
  20.  
  21. def callback(self, data):
  22. who = data._connection_header.get('callerid', "default_authority")
  23. for transform in data.transforms:
  24. self.buffer.set_transform(transform, who)
  25.  
  26. def static_callback(self, data):
  27. who = data._connection_header.get('callerid', "default_authority")
  28. for transform in data.transforms:
  29. self.buffer.set_transform_static(transform, who)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement