grepros 1.2.2
grep for ROS bag files and live topics
Loading...
Searching...
No Matches
ros1.py File Reference

Go to the source code of this file.

Classes

class  ROS1Bag
 ROS1 bag reader and writer. More...
 

Namespaces

namespace  grepros
 
namespace  grepros.ros1
 ROS1 interface.
 

Functions

 canonical (typename, unbounded=False)
 Returns "pkg/Type" for "pkg/subdir/Type".
 
 create_publisher (topic, cls_or_typename, queue_size)
 Returns a rospy.Publisher.
 
 create_subscriber (topic, typename, handler, queue_size)
 Returns a rospy.Subscriber.
 
 deserialize_message (raw, cls_or_typename)
 Returns ROS1 message or service request/response instantiated from serialized binary.
 
 format_message_value (msg, name, value)
 Returns a message attribute value as string.
 
 generate_message_classes (typename, typedef)
 Generates ROS message classes dynamically from given name and definition.
 
 get_message_class (typename)
 Returns ROS1 message class.
 
 get_message_definition (msg_or_type)
 Returns ROS1 message type definition full text, including subtype definitions.
 
 get_message_fields (val)
 Returns OrderedDict({field name: field type name}) if ROS1 message, else {}.
 
 get_message_type (msg_or_cls)
 Returns ROS1 message type name, like "std_msgs/Header".
 
 get_message_type_hash (msg_or_type)
 Returns ROS message type MD5 hash, or "" if unknown type.
 
 get_message_value (msg, name, typename=None, default=Ellipsis)
 Returns object attribute value, with numeric arrays converted to lists.
 
 get_rostime (fallback=False)
 Returns current ROS1 time, as rospy.Time.
 
 get_topic_types ()
 Returns currently available ROS1 topics, as [(topicname, typename)].
 
 init_node (name)
 Initializes a ROS1 node if not already initialized.
 
 is_ros_message (val, ignore_time=False)
 Returns whether value is a ROS1 message or special like ROS1 time/duration class or instance.
 
 is_ros_time (val)
 Returns whether value is a ROS1 time/duration class or instance.
 
 make_duration (secs=0, nsecs=0)
 Returns a ROS1 duration, as rospy.Duration.
 
 make_time (secs=0, nsecs=0)
 Returns a ROS1 time, as rospy.Time.
 
 scalar (typename)
 Returns scalar type from ROS message data type, like "uint8" from "uint8[100]".
 
 serialize_message (msg)
 Returns ROS1 message as a serialized binary.
 
 set_message_value (obj, name, value)
 Sets message or object attribute value.
 
 shutdown_node ()
 Shuts down live ROS1 node.
 
 to_duration (val)
 Returns value as ROS1 duration if convertible (int/float/time/datetime/decimal), else value.
 
 to_nsec (val)
 Returns value in nanoseconds if value is ROS time/duration, else value.
 
 to_sec (val)
 Returns value in seconds if value is ROS1 time/duration, else value.
 
 to_sec_nsec (val)
 Returns value as (seconds, nanoseconds) if value is ROS1 time/duration, else value.
 
 to_time (val)
 Returns value as ROS1 time if convertible (int/float/duration/datetime/decimal), else value.
 
 validate (live=False)
 Returns whether ROS1 environment is set, prints error if not.
 

Variables

 Bag = ROS1Bag
 
tuple BAG_EXTENSIONS = (".bag", ".bag.active")
 Bagfile extensions to seek.
 
 genpy_mtx = threading.RLock()
 Mutex for ensuring exclusive access to genpy generator (genpy.dynamic is not thread-safe)
 
 master = None
 rospy.MasterProxy instance
 
dict ROS_ALIAS_TYPES = {"byte": "int8", "char": "uint8"}
 Mapping between type aliases and real types, like {"byte": "int8"}.
 
dict ROS_TIME_CLASSES = {rospy.Time: "time", rospy.Duration: "duration"}
 ROS1 time/duration types mapped to type names.
 
list ROS_TIME_TYPES = ["time", "duration"]
 ROS1 time/duration types.
 
tuple SKIP_EXTENSIONS = (".bag.orig.active", )
 Bagfile extensions to skip.
 
float SLEEP_INTERVAL = 0.5
 Seconds between checking whether ROS master is available.
 
dict TYPECLASSES = {}
 {(typename, typehash): message type class}