mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
131 lines
2.8 KiB
Plaintext
131 lines
2.8 KiB
Plaintext
|
|
meta:
|
||
|
|
id: wpilog
|
||
|
|
title: WPILib Data Log
|
||
|
|
file-extension: wpilog
|
||
|
|
ks-version: "0.10"
|
||
|
|
encoding: UTF-8
|
||
|
|
endian: le
|
||
|
|
bit-endian: le
|
||
|
|
seq:
|
||
|
|
- id: header
|
||
|
|
type: header
|
||
|
|
- id: records
|
||
|
|
type: record
|
||
|
|
repeat: eos
|
||
|
|
types:
|
||
|
|
version_number:
|
||
|
|
seq:
|
||
|
|
- id: minor
|
||
|
|
type: u1
|
||
|
|
- id: major
|
||
|
|
type: u1
|
||
|
|
header:
|
||
|
|
seq:
|
||
|
|
- id: magic
|
||
|
|
contents: WPILOG
|
||
|
|
- id: version
|
||
|
|
type: version_number
|
||
|
|
- id: extra_header_length
|
||
|
|
type: u4
|
||
|
|
- id: extra_header
|
||
|
|
size: extra_header_length
|
||
|
|
type: str
|
||
|
|
record:
|
||
|
|
seq:
|
||
|
|
- id: header_length
|
||
|
|
type: record_header_length
|
||
|
|
- id: entry_id
|
||
|
|
type:
|
||
|
|
switch-on: header_length.len_entry_id
|
||
|
|
cases:
|
||
|
|
0: u1
|
||
|
|
1: u2
|
||
|
|
2: b24
|
||
|
|
3: u4
|
||
|
|
- id: len_payload
|
||
|
|
type:
|
||
|
|
switch-on: header_length.len_payload_size
|
||
|
|
cases:
|
||
|
|
0: u1
|
||
|
|
1: u2
|
||
|
|
2: b24
|
||
|
|
3: u4
|
||
|
|
- id: timestamp
|
||
|
|
type:
|
||
|
|
switch-on: header_length.len_timestamp
|
||
|
|
cases:
|
||
|
|
0: u1
|
||
|
|
1: u2
|
||
|
|
2: b24
|
||
|
|
3: u4
|
||
|
|
4: b40
|
||
|
|
5: b48
|
||
|
|
6: b56
|
||
|
|
7: u8
|
||
|
|
- id: payload
|
||
|
|
size: len_payload
|
||
|
|
type:
|
||
|
|
switch-on: entry_id
|
||
|
|
cases:
|
||
|
|
# ID 0 is reserved for control records
|
||
|
|
0: control_record_payload
|
||
|
|
record_header_length:
|
||
|
|
seq:
|
||
|
|
- id: len_entry_id
|
||
|
|
type: b2
|
||
|
|
- id: len_payload_size
|
||
|
|
type: b2
|
||
|
|
- id: len_timestamp
|
||
|
|
type: b3
|
||
|
|
- id: spare_bit
|
||
|
|
type: b1
|
||
|
|
control_record_payload:
|
||
|
|
seq:
|
||
|
|
- id: type
|
||
|
|
type: u1
|
||
|
|
enum: control_record_type
|
||
|
|
- id: data
|
||
|
|
type:
|
||
|
|
switch-on: type
|
||
|
|
cases:
|
||
|
|
"control_record_type::start": control_record_start_data
|
||
|
|
"control_record_type::finish": control_record_finish_data
|
||
|
|
"control_record_type::set_metadata": control_record_set_metadata_data
|
||
|
|
control_record_start_data:
|
||
|
|
seq:
|
||
|
|
- id: entry_id
|
||
|
|
type: u4
|
||
|
|
- id: len_entry_name
|
||
|
|
type: u4
|
||
|
|
- id: entry_name
|
||
|
|
size: len_entry_name
|
||
|
|
type: str
|
||
|
|
- id: len_entry_type
|
||
|
|
type: u4
|
||
|
|
- id: entry_type
|
||
|
|
size: len_entry_type
|
||
|
|
type: str
|
||
|
|
- id: len_entry_metadata
|
||
|
|
type: u4
|
||
|
|
- id: entry_metadata
|
||
|
|
size: len_entry_metadata
|
||
|
|
type: str
|
||
|
|
control_record_finish_data:
|
||
|
|
seq:
|
||
|
|
- id: entry_id
|
||
|
|
type: u4
|
||
|
|
control_record_set_metadata_data:
|
||
|
|
seq:
|
||
|
|
- id: entry_id
|
||
|
|
type: u4
|
||
|
|
- id: len_entry_metadata
|
||
|
|
type: u4
|
||
|
|
- id: entry_metadata
|
||
|
|
size: len_entry_metadata
|
||
|
|
type: str
|
||
|
|
enums:
|
||
|
|
control_record_type:
|
||
|
|
0: start
|
||
|
|
1: finish
|
||
|
|
2: set_metadata
|