blob: 47906dcad6d01d09bf2dbdb15c3f17fef0faa78e [file] [log] [blame]
Brian Silverman2ccf8c52016-03-15 00:22:26 -04001package y2016.vision;
2
3message VisionStatus {
Austin Schuhc65b0ea2016-03-16 22:09:19 -07004 bool left_image_valid;
5 bool right_image_valid;
Brian Silverman2ccf8c52016-03-15 00:22:26 -04006 // Times when the images were taken as nanoseconds on CLOCK_MONOTONIC on the
7 // TK1.
8 int64_t left_image_timestamp;
9 int64_t right_image_timestamp;
10 // Times when the images were sent from the TK1 as nanoseconds on the TK1's
11 // CLOCK_MONOTONIC.
12 int64_t left_send_timestamp;
13 int64_t right_send_timestamp;
14
15 // Horizontal angle of the goal in radians.
16 // TODO(Brian): Figure out which way is positive.
17 double horizontal_angle;
18 // Vertical angle of the goal in radians.
19 // TODO(Brian): Figure out which way is positive.
20 double vertical_angle;
21 // Distance to the target in meters.
22 double distance;
Austin Schuh6bf73052016-04-20 20:20:25 -070023 // The angle in radians of the bottom of the target.
24 double angle;
Austin Schuh11945742016-04-13 22:18:36 -070025
Austin Schuhf2a50ba2016-12-24 16:16:26 -080026 // Capture time of the angle using the clock behind monotonic_clock::now().
Austin Schuh11945742016-04-13 22:18:36 -070027 int64_t target_time;
Brian Silvermanbc831182016-04-16 02:06:09 -040028
29 // The estimated positions of both sides of the drivetrain when the frame
30 // was captured.
31 // These are the estimated_left_position and estimated_right_position members
32 // of the drivetrain queue.
33 double drivetrain_left_position;
34 double drivetrain_right_position;
Brian Silverman2ccf8c52016-03-15 00:22:26 -040035};
36queue VisionStatus vision_status;