blob: 9d5dffcb65ddfe2b0625ee312a3b638090271850 [file] [log] [blame]
James Kuszmaul09f564a2019-02-18 17:37:09 -08001package y2019.control_loops.drivetrain;
2
Brian Silvermanc41fb862019-03-02 21:14:46 -08003// See the Target structure in //y2019/jevois:structures.h for documentation.
James Kuszmaul09f564a2019-02-18 17:37:09 -08004struct CameraTarget {
5 float distance;
6 float height;
7 float heading;
8 float skew;
9};
10
Austin Schuh8a633d52019-05-12 15:04:01 -070011// Frames from a camera.
12// Published on ".y2019.control_loops.drivetrain.camera_frames"
James Kuszmaul09f564a2019-02-18 17:37:09 -080013message CameraFrame {
Brian Silvermanc41fb862019-03-02 21:14:46 -080014 // Number of nanoseconds since the aos::monotonic_clock epoch at which this
15 // frame was captured.
James Kuszmaul09f564a2019-02-18 17:37:09 -080016 int64_t timestamp;
17
18 // Number of targets actually in this frame.
19 uint8_t num_targets;
20
Brian Silvermanc41fb862019-03-02 21:14:46 -080021 // Buffer for the targets.
James Kuszmaul09f564a2019-02-18 17:37:09 -080022 CameraTarget[3] targets;
23
Brian Silvermanc41fb862019-03-02 21:14:46 -080024 // Index of the camera position (not serial number) which this frame is from.
James Kuszmaul09f564a2019-02-18 17:37:09 -080025 uint8_t camera;
26};