Skip to content
60 changes: 60 additions & 0 deletions osi_occupant.proto
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ message Occupant
// wheel (mostly driver).
//
optional SteeringControl steering_control = 4;

// Occupant's (physiological) state.
//
optional State state = 5;

// Definition of seat positions.
//
Expand Down Expand Up @@ -126,5 +130,61 @@ message Occupant
//
STEERING_CONTROL_RIGHT_HAND = 6;
}

//
// \brief An occupant's state consists of physiological data like head pose,
// eye states and gaze.
//
message State
{
// Head pose.
//
optional HeadPose head_pose = 1;

// Left eye state.
//
optional EyeState eye_state_left = 2;

// Right eye state.
//
optional EyeState eye_state_right = 3;

//
// \brief An occupant's head pose, including position and orientation.
//
message HeadPose
{
// Position within the ego vehicle's coordinate system.
//
optional Vector3d position = 1;

// Orientation.
//
optional Orientation3d orientation = 2;
}

//
// \brief The eye state comprises information regarding an eye's presence, gaze,
// position and opening.
//
message EyeState
{
// Flag indicating whether the eye is present.
//
optional bool present = 1;

// Gaze vector.
//
optional Orientation3d gaze = 2;

// Position.
//
optional Vector3d position = 3;

// Opening in [m].
//
optional double opening = 4;
}
}
}
}