Public Member Functions | Public Attributes | Static Public Attributes | Properties | Private Member Functions | Private Attributes | List of all members
rqt_bag.bag_timeline.BagTimeline Class Reference
Inheritance diagram for rqt_bag.bag_timeline.BagTimeline:
Inheritance graph
[legend]

Public Member Functions

def __init__ (self, context, publish_clock)
 
def add_bag (self, bag)
 
def add_listener (self, topic, listener)
 
def add_view (self, topic, frame)
 
def copy_region_to_bag (self, filename)
 
def file_size (self)
 
def get_context (self)
 
def get_datatype (self, topic)
 
def get_entries (self, topics, start_stamp, end_stamp)
 
def get_entries_with_bags (self, topic, start_stamp, end_stamp)
 
def get_entry (self, t, topic)
 
def get_entry_after (self, t)
 
def get_entry_before (self, t)
 
def get_next_message_time (self)
 
def get_previous_message_time (self)
 
def handle_close (self)
 
def has_listeners (self, topic)
 
def is_publishing (self, topic)
 
def navigate_end (self)
 
def navigate_fastforward (self)
 
def navigate_next (self)
 
def navigate_play (self)
 
def navigate_previous (self)
 
def navigate_rewind (self)
 
def navigate_start (self)
 
def navigate_stop (self)
 
def on_idle (self)
 
def on_mouse_down (self, event)
 
def on_mouse_move (self, event)
 
def on_mouse_up (self, event)
 
def on_mousewheel (self, event)
 
def read_message (self, bag, position)
 
def record_bag (self, filename, all=True, topics=[], regex=False, limit=0)
 
def remove_listener (self, topic, listener)
 
def reset_zoom (self)
 
def resume (self)
 
def set_publishing_state (self, start_publishing)
 
def start_background_task (self, background_task)
 
def start_publishing (self, topic)
 
def step_fixed (self)
 
def step_next_message (self)
 
def stop_background_task (self)
 
def stop_publishing (self, topic)
 
def toggle_play (self)
 
def toggle_play_all (self)
 
def toggle_recording (self)
 
def translate_timeline_left (self)
 
def translate_timeline_right (self)
 
def zoom_in (self)
 
def zoom_out (self)
 

Public Attributes

 background_progress
 
 background_task
 
 background_task_cancel
 
 desired_playhead
 
 last_frame
 
 last_playhead
 
 popups
 
 stick_to_end
 
 wrap
 

Static Public Attributes

 selected_region_changed = Signal(rospy.Time, rospy.Time)
 
 status_bar_changed_signal = Signal()
 

Properties

 play_all = property(_get_play_all, _set_play_all)
 
 play_speed = property(_get_play_speed, _set_play_speed)
 

Private Member Functions

def _create_player (self)
 
def _export_region (self, path, topics, start_stamp, end_stamp)
 
def _get_end_stamp (self)
 
def _get_play_all (self)
 
def _get_play_speed (self)
 
def _get_start_stamp (self)
 
def _get_topics (self)
 
def _get_topics_by_datatype (self)
 
def _message_recorded (self, topic, msg, t)
 
def _run_export_region (self, export_bag, topics, start_stamp, end_stamp, bag_entries)
 
def _set_play_all (self, play_all)
 
def _set_play_speed (self, play_speed)
 
def _step_playhead (self)
 

Private Attributes

 __closed
 
 _bag_lock
 
 _bags
 
 _context
 
 _export_thread
 
 _listeners
 
 _max_play_speed
 
 _message_listener_threads
 
 _message_loaders
 
 _messages
 
 _messages_cvs
 
 _min_play_speed
 
 _play_all
 
 _play_speed
 
 _play_timer
 
 _player
 
 _playhead_lock
 
 _playhead_positions
 
 _playhead_positions_cvs
 
 _publish_clock
 
 _recorder
 
 _timeline_frame
 
 _views
 

Detailed Description

BagTimeline contains bag files, all information required to display the bag data visualization
on the screen Also handles events

Definition at line 54 of file bag_timeline.py.

Constructor & Destructor Documentation

◆ __init__()

def rqt_bag.bag_timeline.BagTimeline.__init__ (   self,
  context,
  publish_clock 
)
:param context:
    plugin context hook to enable adding rqt_bag plugin widgets as ROS_GUI snapin panes,
    ''PluginContext''

Definition at line 63 of file bag_timeline.py.

Member Function Documentation

◆ _create_player()

def rqt_bag.bag_timeline.BagTimeline._create_player (   self)
private

Definition at line 555 of file bag_timeline.py.

◆ _export_region()

def rqt_bag.bag_timeline.BagTimeline._export_region (   self,
  path,
  topics,
  start_stamp,
  end_stamp 
)
private
Starts a thread to save the current selection to a new bag file
:param path: filesystem path to write to, ''str''
:param topics: topics to write to the file, ''list(str)''
:param start_stamp: start of area to save, ''rospy.Time''
:param end_stamp: end of area to save, ''rospy.Time''

Definition at line 411 of file bag_timeline.py.

◆ _get_end_stamp()

def rqt_bag.bag_timeline.BagTimeline._get_end_stamp (   self)
private
:return: last stamp in the bags, ''rospy.Time''

Definition at line 202 of file bag_timeline.py.

◆ _get_play_all()

def rqt_bag.bag_timeline.BagTimeline._get_play_all (   self)
private

Definition at line 577 of file bag_timeline.py.

◆ _get_play_speed()

def rqt_bag.bag_timeline.BagTimeline._get_play_speed (   self)
private

Definition at line 784 of file bag_timeline.py.

◆ _get_start_stamp()

def rqt_bag.bag_timeline.BagTimeline._get_start_stamp (   self)
private
:return: first stamp in the bags, ''rospy.Time''

Definition at line 189 of file bag_timeline.py.

◆ _get_topics()

def rqt_bag.bag_timeline.BagTimeline._get_topics (   self)
private
:return: sorted list of topic names, ''list(str)''

Definition at line 214 of file bag_timeline.py.

◆ _get_topics_by_datatype()

def rqt_bag.bag_timeline.BagTimeline._get_topics_by_datatype (   self)
private
:return: dict of list of topics for each datatype, ''dict(datatype:list(topic))''

Definition at line 225 of file bag_timeline.py.

◆ _message_recorded()

def rqt_bag.bag_timeline.BagTimeline._message_recorded (   self,
  topic,
  msg,
  t 
)
private

Definition at line 716 of file bag_timeline.py.

◆ _run_export_region()

def rqt_bag.bag_timeline.BagTimeline._run_export_region (   self,
  export_bag,
  topics,
  start_stamp,
  end_stamp,
  bag_entries 
)
private
Threaded function that saves the current selection to a new bag file
:param export_bag: bagfile to write to, ''rosbag.bag''
:param topics: topics to write to the file, ''list(str)''
:param start_stamp: start of area to save, ''rospy.Time''
:param end_stamp: end of area to save, ''rospy.Time''

Definition at line 451 of file bag_timeline.py.

◆ _set_play_all()

def rqt_bag.bag_timeline.BagTimeline._set_play_all (   self,
  play_all 
)
private

Definition at line 580 of file bag_timeline.py.

◆ _set_play_speed()

def rqt_bag.bag_timeline.BagTimeline._set_play_speed (   self,
  play_speed 
)
private

Definition at line 789 of file bag_timeline.py.

◆ _step_playhead()

def rqt_bag.bag_timeline.BagTimeline._step_playhead (   self)
private
moves the playhead to the next position based on the desired position

Definition at line 599 of file bag_timeline.py.

◆ add_bag()

def rqt_bag.bag_timeline.BagTimeline.add_bag (   self,
  bag 
)
creates an indexing thread for each new topic in the bag
fixes the boarders and notifies the indexing thread to index the new items bags
:param bag: ros bag file, ''rosbag.bag''

Definition at line 150 of file bag_timeline.py.

◆ add_listener()

def rqt_bag.bag_timeline.BagTimeline.add_listener (   self,
  topic,
  listener 
)

Definition at line 755 of file bag_timeline.py.

◆ add_view()

def rqt_bag.bag_timeline.BagTimeline.add_view (   self,
  topic,
  frame 
)

Definition at line 749 of file bag_timeline.py.

◆ copy_region_to_bag()

def rqt_bag.bag_timeline.BagTimeline.copy_region_to_bag (   self,
  filename 
)

Definition at line 405 of file bag_timeline.py.

◆ file_size()

def rqt_bag.bag_timeline.BagTimeline.file_size (   self)

Definition at line 184 of file bag_timeline.py.

◆ get_context()

def rqt_bag.bag_timeline.BagTimeline.get_context (   self)
:returns: the ROS_GUI context, 'PluginContext'

Definition at line 118 of file bag_timeline.py.

◆ get_datatype()

def rqt_bag.bag_timeline.BagTimeline.get_datatype (   self,
  topic 
)
:return: datatype associated with a topic, ''str''
:raises: if there are multiple datatypes assigned to a single topic, ''Exception''

Definition at line 236 of file bag_timeline.py.

◆ get_entries()

def rqt_bag.bag_timeline.BagTimeline.get_entries (   self,
  topics,
  start_stamp,
  end_stamp 
)
generator function for bag entries
:param topics: list of topics to query, ''list(str)''
:param start_stamp: stamp to start at, ''rospy.Time''
:param end_stamp: stamp to end at, ''rospy,Time''
:returns: entries the bag file, ''msg''

Definition at line 252 of file bag_timeline.py.

◆ get_entries_with_bags()

def rqt_bag.bag_timeline.BagTimeline.get_entries_with_bags (   self,
  topic,
  start_stamp,
  end_stamp 
)
generator function for bag entries
:param topics: list of topics to query, ''list(str)''
:param start_stamp: stamp to start at, ''rospy.Time''
:param end_stamp: stamp to end at, ''rospy,Time''
:returns: tuple of (bag, entry) for the entries in the bag file, ''(rosbag.Bag, rosbag.bag._IndexEntry)''

Definition at line 279 of file bag_timeline.py.

◆ get_entry()

def rqt_bag.bag_timeline.BagTimeline.get_entry (   self,
  t,
  topic 
)
Access a bag entry
:param t: time, ''rospy.Time''
:param topic: the topic to be accessed, ''str''
:return: tuple of (bag, entry) corisponding to time t and topic, ''(rosbag.bag, msg)''

Definition at line 309 of file bag_timeline.py.

◆ get_entry_after()

def rqt_bag.bag_timeline.BagTimeline.get_entry_after (   self,
  t 
)
Access a bag entry
:param t: time, ''rospy.Time''
:return: tuple of (bag, entry) corisponding to time t, ''(rosbag.bag, msg)''

Definition at line 340 of file bag_timeline.py.

◆ get_entry_before()

def rqt_bag.bag_timeline.BagTimeline.get_entry_before (   self,
  t 
)
Access a bag entry
:param t: time, ''rospy.Time''
:return: tuple of (bag, entry) corresponding to time t, ''(rosbag.bag, msg)''

Definition at line 325 of file bag_timeline.py.

◆ get_next_message_time()

def rqt_bag.bag_timeline.BagTimeline.get_next_message_time (   self)
:return: time of the next message after the current playhead position,''rospy.Time''

Definition at line 355 of file bag_timeline.py.

◆ get_previous_message_time()

def rqt_bag.bag_timeline.BagTimeline.get_previous_message_time (   self)
:return: time of the next message before the current playhead position,''rospy.Time''

Definition at line 368 of file bag_timeline.py.

◆ handle_close()

def rqt_bag.bag_timeline.BagTimeline.handle_close (   self)
Cleans up the timeline, bag and any threads

Definition at line 124 of file bag_timeline.py.

◆ has_listeners()

def rqt_bag.bag_timeline.BagTimeline.has_listeners (   self,
  topic 
)

Definition at line 752 of file bag_timeline.py.

◆ is_publishing()

def rqt_bag.bag_timeline.BagTimeline.is_publishing (   self,
  topic 
)

Definition at line 538 of file bag_timeline.py.

◆ navigate_end()

def rqt_bag.bag_timeline.BagTimeline.navigate_end (   self)

Definition at line 855 of file bag_timeline.py.

◆ navigate_fastforward()

def rqt_bag.bag_timeline.BagTimeline.navigate_fastforward (   self)

Definition at line 842 of file bag_timeline.py.

◆ navigate_next()

def rqt_bag.bag_timeline.BagTimeline.navigate_next (   self)

Definition at line 827 of file bag_timeline.py.

◆ navigate_play()

def rqt_bag.bag_timeline.BagTimeline.navigate_play (   self)

Definition at line 812 of file bag_timeline.py.

◆ navigate_previous()

def rqt_bag.bag_timeline.BagTimeline.navigate_previous (   self)

Definition at line 822 of file bag_timeline.py.

◆ navigate_rewind()

def rqt_bag.bag_timeline.BagTimeline.navigate_rewind (   self)

Definition at line 832 of file bag_timeline.py.

◆ navigate_start()

def rqt_bag.bag_timeline.BagTimeline.navigate_start (   self)

Definition at line 852 of file bag_timeline.py.

◆ navigate_stop()

def rqt_bag.bag_timeline.BagTimeline.navigate_stop (   self)

Definition at line 818 of file bag_timeline.py.

◆ on_idle()

def rqt_bag.bag_timeline.BagTimeline.on_idle (   self)

Definition at line 596 of file bag_timeline.py.

◆ on_mouse_down()

def rqt_bag.bag_timeline.BagTimeline.on_mouse_down (   self,
  event 
)

Definition at line 502 of file bag_timeline.py.

◆ on_mouse_move()

def rqt_bag.bag_timeline.BagTimeline.on_mouse_move (   self,
  event 
)

Definition at line 514 of file bag_timeline.py.

◆ on_mouse_up()

def rqt_bag.bag_timeline.BagTimeline.on_mouse_up (   self,
  event 
)

Definition at line 511 of file bag_timeline.py.

◆ on_mousewheel()

def rqt_bag.bag_timeline.BagTimeline.on_mousewheel (   self,
  event 
)

Definition at line 517 of file bag_timeline.py.

◆ read_message()

def rqt_bag.bag_timeline.BagTimeline.read_message (   self,
  bag,
  position 
)

Definition at line 497 of file bag_timeline.py.

◆ record_bag()

def rqt_bag.bag_timeline.BagTimeline.record_bag (   self,
  filename,
  all = True,
  topics = [],
  regex = False,
  limit = 0 
)

Definition at line 692 of file bag_timeline.py.

◆ remove_listener()

def rqt_bag.bag_timeline.BagTimeline.remove_listener (   self,
  topic,
  listener 
)

Definition at line 767 of file bag_timeline.py.

◆ reset_zoom()

def rqt_bag.bag_timeline.BagTimeline.reset_zoom (   self)

Definition at line 528 of file bag_timeline.py.

◆ resume()

def rqt_bag.bag_timeline.BagTimeline.resume (   self)

Definition at line 381 of file bag_timeline.py.

◆ set_publishing_state()

def rqt_bag.bag_timeline.BagTimeline.set_publishing_state (   self,
  start_publishing 
)

Definition at line 567 of file bag_timeline.py.

◆ start_background_task()

def rqt_bag.bag_timeline.BagTimeline.start_background_task (   self,
  background_task 
)
Verify that a background task is not currently running before starting a new one
:param background_task: name of the background task, ''str''

Definition at line 387 of file bag_timeline.py.

◆ start_publishing()

def rqt_bag.bag_timeline.BagTimeline.start_publishing (   self,
  topic 
)

Definition at line 541 of file bag_timeline.py.

◆ step_fixed()

def rqt_bag.bag_timeline.BagTimeline.step_fixed (   self)
Moves the playhead a fixed distance into the future based on the current play speed

Definition at line 614 of file bag_timeline.py.

◆ step_next_message()

def rqt_bag.bag_timeline.BagTimeline.step_next_message (   self)
Move the playhead to the next message

Definition at line 661 of file bag_timeline.py.

◆ stop_background_task()

def rqt_bag.bag_timeline.BagTimeline.stop_background_task (   self)

Definition at line 402 of file bag_timeline.py.

◆ stop_publishing()

def rqt_bag.bag_timeline.BagTimeline.stop_publishing (   self,
  topic 
)

Definition at line 548 of file bag_timeline.py.

◆ toggle_play()

def rqt_bag.bag_timeline.BagTimeline.toggle_play (   self)

Definition at line 806 of file bag_timeline.py.

◆ toggle_play_all()

def rqt_bag.bag_timeline.BagTimeline.toggle_play_all (   self)

Definition at line 592 of file bag_timeline.py.

◆ toggle_recording()

def rqt_bag.bag_timeline.BagTimeline.toggle_recording (   self)

Definition at line 711 of file bag_timeline.py.

◆ translate_timeline_left()

def rqt_bag.bag_timeline.BagTimeline.translate_timeline_left (   self)

Definition at line 531 of file bag_timeline.py.

◆ translate_timeline_right()

def rqt_bag.bag_timeline.BagTimeline.translate_timeline_right (   self)

Definition at line 534 of file bag_timeline.py.

◆ zoom_in()

def rqt_bag.bag_timeline.BagTimeline.zoom_in (   self)

Definition at line 522 of file bag_timeline.py.

◆ zoom_out()

def rqt_bag.bag_timeline.BagTimeline.zoom_out (   self)

Definition at line 525 of file bag_timeline.py.

Member Data Documentation

◆ __closed

rqt_bag.bag_timeline.BagTimeline.__closed
private

Definition at line 116 of file bag_timeline.py.

◆ _bag_lock

rqt_bag.bag_timeline.BagTimeline._bag_lock
private

Definition at line 71 of file bag_timeline.py.

◆ _bags

rqt_bag.bag_timeline.BagTimeline._bags
private

Definition at line 70 of file bag_timeline.py.

◆ _context

rqt_bag.bag_timeline.BagTimeline._context
private

Definition at line 101 of file bag_timeline.py.

◆ _export_thread

rqt_bag.bag_timeline.BagTimeline._export_thread
private

Definition at line 446 of file bag_timeline.py.

◆ _listeners

rqt_bag.bag_timeline.BagTimeline._listeners
private

Definition at line 104 of file bag_timeline.py.

◆ _max_play_speed

rqt_bag.bag_timeline.BagTimeline._max_play_speed
private

Definition at line 78 of file bag_timeline.py.

◆ _message_listener_threads

rqt_bag.bag_timeline.BagTimeline._message_listener_threads
private

Definition at line 87 of file bag_timeline.py.

◆ _message_loaders

rqt_bag.bag_timeline.BagTimeline._message_loaders
private

Definition at line 84 of file bag_timeline.py.

◆ _messages

rqt_bag.bag_timeline.BagTimeline._messages
private

Definition at line 86 of file bag_timeline.py.

◆ _messages_cvs

rqt_bag.bag_timeline.BagTimeline._messages_cvs
private

Definition at line 85 of file bag_timeline.py.

◆ _min_play_speed

rqt_bag.bag_timeline.BagTimeline._min_play_speed
private

Definition at line 79 of file bag_timeline.py.

◆ _play_all

rqt_bag.bag_timeline.BagTimeline._play_all
private

Definition at line 81 of file bag_timeline.py.

◆ _play_speed

rqt_bag.bag_timeline.BagTimeline._play_speed
private

Definition at line 80 of file bag_timeline.py.

◆ _play_timer

rqt_bag.bag_timeline.BagTimeline._play_timer
private

Definition at line 96 of file bag_timeline.py.

◆ _player

rqt_bag.bag_timeline.BagTimeline._player
private

Definition at line 88 of file bag_timeline.py.

◆ _playhead_lock

rqt_bag.bag_timeline.BagTimeline._playhead_lock
private

Definition at line 77 of file bag_timeline.py.

◆ _playhead_positions

rqt_bag.bag_timeline.BagTimeline._playhead_positions
private

Definition at line 83 of file bag_timeline.py.

◆ _playhead_positions_cvs

rqt_bag.bag_timeline.BagTimeline._playhead_positions_cvs
private

Definition at line 82 of file bag_timeline.py.

◆ _publish_clock

rqt_bag.bag_timeline.BagTimeline._publish_clock
private

Definition at line 89 of file bag_timeline.py.

◆ _recorder

rqt_bag.bag_timeline.BagTimeline._recorder
private

Definition at line 90 of file bag_timeline.py.

◆ _timeline_frame

rqt_bag.bag_timeline.BagTimeline._timeline_frame
private

Definition at line 111 of file bag_timeline.py.

◆ _views

rqt_bag.bag_timeline.BagTimeline._views
private

Definition at line 103 of file bag_timeline.py.

◆ background_progress

rqt_bag.bag_timeline.BagTimeline.background_progress

Definition at line 115 of file bag_timeline.py.

◆ background_task

rqt_bag.bag_timeline.BagTimeline.background_task

Definition at line 73 of file bag_timeline.py.

◆ background_task_cancel

rqt_bag.bag_timeline.BagTimeline.background_task_cancel

Definition at line 74 of file bag_timeline.py.

◆ desired_playhead

rqt_bag.bag_timeline.BagTimeline.desired_playhead

Definition at line 93 of file bag_timeline.py.

◆ last_frame

rqt_bag.bag_timeline.BagTimeline.last_frame

Definition at line 91 of file bag_timeline.py.

◆ last_playhead

rqt_bag.bag_timeline.BagTimeline.last_playhead

Definition at line 92 of file bag_timeline.py.

◆ popups

rqt_bag.bag_timeline.BagTimeline.popups

Definition at line 102 of file bag_timeline.py.

◆ selected_region_changed

rqt_bag.bag_timeline.BagTimeline.selected_region_changed = Signal(rospy.Time, rospy.Time)
static

Definition at line 61 of file bag_timeline.py.

◆ status_bar_changed_signal

rqt_bag.bag_timeline.BagTimeline.status_bar_changed_signal = Signal()
static

Definition at line 60 of file bag_timeline.py.

◆ stick_to_end

rqt_bag.bag_timeline.BagTimeline.stick_to_end

Definition at line 95 of file bag_timeline.py.

◆ wrap

rqt_bag.bag_timeline.BagTimeline.wrap

Definition at line 94 of file bag_timeline.py.

Property Documentation

◆ play_all

rqt_bag.bag_timeline.BagTimeline.play_all = property(_get_play_all, _set_play_all)
static

Definition at line 590 of file bag_timeline.py.

◆ play_speed

rqt_bag.bag_timeline.BagTimeline.play_speed = property(_get_play_speed, _set_play_speed)
static

Definition at line 804 of file bag_timeline.py.


The documentation for this class was generated from the following file:


rqt_bag
Author(s): Dirk Thomas , Aaron Blasdel , Austin Hendrix , Tim Field
autogenerated on Thu Mar 2 2023 03:43:15