1 from __future__
import absolute_import, division, print_function
3 from tf2_ros
import Buffer, TransformListener, BufferClient
4 from threading
import Lock
17 global _buffer, _listener
20 server = rospy.get_param(
'~tf_server',
None)
22 check_frequency = rospy.get_param(
'~tf_check_frequency',
None)
23 timeout_padding = rospy.get_param(
'~tf_timeout_padding', 2.0)
24 _buffer =
BufferClient(server, check_frequency, rospy.Duration.from_sec(timeout_padding))
25 rospy.loginfo(
'Using tf buffer client (server %s, timeout padding %.3g s).',
26 server, timeout_padding)
28 cache_time = rospy.get_param(
'~tf_cache_time', 10.0)
29 queue_size = rospy.get_param(
'~tf_queue_size',
None)
30 buff_size = rospy.get_param(
'~tf_buff_size', 65536)
31 _buffer =
Buffer(rospy.Duration(cache_time))
33 rospy.loginfo(
'Using local tf buffer (cache %.3g s, queue size %s, buffer size %s).',
34 cache_time, queue_size, buff_size)
39 def clear(buffer=True, listener=True):
40 global _buffer, _listener
42 if listener
and _listener
is not None:
43 _listener.unregister()
45 rospy.loginfo(
'Listener unregistered and deleted.')
46 if buffer
and _buffer
is not None:
48 rospy.loginfo(
'Buffer deleted.')
def clear(buffer=True, listener=True)
BufferPtr get_buffer(ros::NodeHandle &nh, ros::NodeHandle &pnh)