// generated from rosidl_adapter/resource/msg.idl.em
// with input from px4_msgs/msg/ObstacleDistance.msg
// generated code does not contain a copyright notice


module px4_msgs {
  module msg {
    typedef uint16 uint16__72[72];
    module ObstacleDistance_Constants {
      const uint8 MAV_FRAME_GLOBAL = 0;
      const uint8 MAV_FRAME_LOCAL_NED = 1;
      const uint8 MAV_FRAME_BODY_FRD = 12;
      const uint8 MAV_DISTANCE_SENSOR_LASER = 0;
      const uint8 MAV_DISTANCE_SENSOR_ULTRASOUND = 1;
      const uint8 MAV_DISTANCE_SENSOR_INFRARED = 2;
      const uint8 MAV_DISTANCE_SENSOR_RADAR = 3;
    };
    @verbatim (language="comment", text=
      "Obstacle distances in front of the sensor.")
    struct ObstacleDistance {
      @verbatim (language="comment", text=
        "time since system start (microseconds)")
      uint64 timestamp;

      @verbatim (language="comment", text=
        "Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to MAV_FRAME_GLOBAL, which is North aligned. For body-mounted sensors use MAV_FRAME_BODY_FRD, which is vehicle front aligned.")
      uint8 frame;

      @verbatim (language="comment", text=
        "Type from MAV_DISTANCE_SENSOR enum.")
      uint8 sensor_type;

      @verbatim (language="comment", text=
        "Distance of obstacles around the UAV with index 0 corresponding to local North. A value of 0 means that the obstacle is right in front of the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm.")
      uint16__72 distances;

      @verbatim (language="comment", text=
        "Angular width in degrees of each array element.")
      float increment;

      @verbatim (language="comment", text=
        "Minimum distance the sensor can measure in centimeters.")
      uint16 min_distance;

      @verbatim (language="comment", text=
        "Maximum distance the sensor can measure in centimeters.")
      uint16 max_distance;

      @verbatim (language="comment", text=
        "Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive values are offsets to the right.")
      float angle_offset;
    };
  };
};
