| def rosbag.bag._get_message_type | ( | info | ) | [private] |
| def rosbag.bag._human_readable_frequency | ( | freq | ) | [private] |
| def rosbag.bag._human_readable_size | ( | size | ) | [private] |
| def rosbag.bag._median | ( | values | ) | [private] |
| def rosbag.bag._mergesort | ( | list_of_lists, | |
key = None |
|||
| ) | [private] |
See http://code.activestate.com/recipes/511509.
Perform an N-way merge operation on sorted lists.
@param list_of_lists: (really iterable of iterable) of sorted elements
(either by naturally or by C{key})
@param key: specify sort key function (like C{sort()}, C{sorted()})
@param iterfun: function that returns an iterator.
Yields tuples of the form C{(item, iterator)}, where the iterator is the
built-in list iterator or something you pass in, if you pre-generate the
iterators.
This is a stable merge; complexity O(N lg N)
Examples::
print list(x[0] for x in mergesort([[1,2,3,4],
[2,3.5,3.7,4.5,6,7],
[2.6,3.6,6.6,9]]))
[1, 2, 2, 2.6, 3, 3.5, 3.6, 3.7, 4, 4.5, 6, 6.6, 7, 9]
# note stability
print list(x[0] for x in mergesort([[1,2,3,4],
[2,3.5,3.7,4.5,6,7],
[2.6,3.6,6.6,9]], key=int))
[1, 2, 2, 2.6, 3, 3.5, 3.6, 3.7, 4, 4.5, 6, 6.6, 7, 9]
print list(x[0] for x in mergesort([[4,3,2,1],
[7,6.5,4,3.7,3.3,1.9],
[9,8.6,7.6,6.6,5.5,4.4,3.3]],
key=lambda x: -x))
[9, 8.6, 7.6, 7, 6.6, 6.5, 5.5, 4.4, 4, 4, 3.7, 3.3, 3.3, 3, 2, 1.9, 1]
| def rosbag.bag._pack_time | ( | v | ) | [private] |
| def rosbag.bag._pack_uint32 | ( | v | ) | [private] |
| def rosbag.bag._pack_uint64 | ( | v | ) | [private] |
| def rosbag.bag._pack_uint8 | ( | v | ) | [private] |
| def rosbag.bag._peek_next_header_op | ( | f | ) | [private] |
| def rosbag.bag._read | ( | f, | |
| size | |||
| ) | [private] |
| def rosbag.bag._read_field | ( | header, | |
| field, | |||
| unpack_fn | |||
| ) | [private] |
| def rosbag.bag._read_header | ( | f, | |
req_op = None |
|||
| ) | [private] |
| def rosbag.bag._read_record_data | ( | f | ) | [private] |
| def rosbag.bag._read_sized | ( | f | ) | [private] |
| def rosbag.bag._read_str_field | ( | header, | |
| field | |||
| ) | [private] |
| def rosbag.bag._read_time | ( | f | ) | [private] |
| def rosbag.bag._read_time_field | ( | header, | |
| field | |||
| ) | [private] |
| def rosbag.bag._read_uint32 | ( | f | ) | [private] |
| def rosbag.bag._read_uint32_field | ( | header, | |
| field | |||
| ) | [private] |
| def rosbag.bag._read_uint64 | ( | f | ) | [private] |
| def rosbag.bag._read_uint64_field | ( | header, | |
| field | |||
| ) | [private] |
| def rosbag.bag._read_uint8 | ( | f | ) | [private] |
| def rosbag.bag._read_uint8_field | ( | header, | |
| field | |||
| ) | [private] |
| def rosbag.bag._skip_record | ( | f | ) | [private] |
| def rosbag.bag._skip_sized | ( | f | ) | [private] |
| def rosbag.bag._time_to_str | ( | secs | ) | [private] |
| def rosbag.bag._unpack_time | ( | v | ) | [private] |
| def rosbag.bag._unpack_uint32 | ( | v | ) | [private] |
| def rosbag.bag._unpack_uint64 | ( | v | ) | [private] |
| def rosbag.bag._unpack_uint8 | ( | v | ) | [private] |
| def rosbag.bag._write_header | ( | f, | |
| header | |||
| ) | [private] |
| def rosbag.bag._write_record | ( | f, | |
| header, | |||
data = '', |
|||
padded_size = None |
|||
| ) | [private] |
| def rosbag.bag._write_sized | ( | f, | |
| v | |||
| ) | [private] |
| int rosbag::bag::_FILE_HEADER_LENGTH = 4096 |
| int rosbag::bag::_INDEX_VERSION = 1 |
| dictionary rosbag::bag::_message_types = {} |
| int rosbag::bag::_OP_CHUNK = 0x05 |
| int rosbag::bag::_OP_CHUNK_INFO = 0x06 |
| dictionary rosbag::bag::_OP_CODES |
00001 { 00002 _OP_MSG_DEF: 'MSG_DEF', 00003 _OP_MSG_DATA: 'MSG_DATA', 00004 _OP_FILE_HEADER: 'FILE_HEADER', 00005 _OP_INDEX_DATA: 'INDEX_DATA', 00006 _OP_CHUNK: 'CHUNK', 00007 _OP_CHUNK_INFO: 'CHUNK_INFO', 00008 _OP_CONNECTION: 'CONNECTION' 00009 }
| int rosbag::bag::_OP_CONNECTION = 0x07 |
| int rosbag::bag::_OP_FILE_HEADER = 0x03 |
| int rosbag::bag::_OP_INDEX_DATA = 0x04 |
| int rosbag::bag::_OP_MSG_DATA = 0x02 |
| int rosbag::bag::_OP_MSG_DEF = 0x01 |
| string rosbag::bag::_VERSION = '#ROSBAG V2.0' |