ardupilot/ArduPlane/GCS_Plane.h

42 lines
1.0 KiB
C
Raw Normal View History

2016-08-25 04:48:27 -03:00
#pragma once
#include <GCS_MAVLink/GCS.h>
#include "GCS_Mavlink.h"
class GCS_Plane : public GCS
{
friend class Plane; // for access to _chan in parameter declarations
2016-08-25 04:48:27 -03:00
public:
// return the number of valid GCS objects
uint8_t num_gcs() const override { return ARRAY_SIZE(_chan); };
2016-08-25 04:48:27 -03:00
// return GCS link at offset ofs
GCS_MAVLINK_Plane &chan(uint8_t ofs) override {
if (ofs >= num_gcs()) {
AP::internalerror().error(AP_InternalError::error_t::gcs_offset);
ofs = 0;
}
return _chan[ofs];
}
const GCS_MAVLINK_Plane &chan(uint8_t ofs) const override {
if (ofs >= num_gcs()) {
AP::internalerror().error(AP_InternalError::error_t::gcs_offset);
ofs = 0;
}
return _chan[ofs];
}
2016-08-25 04:48:27 -03:00
protected:
void update_vehicle_sensor_status_flags(void) override;
2019-03-01 02:27:53 -04:00
uint32_t custom_mode() const override;
MAV_TYPE frame_type() const override;
2016-08-25 04:48:27 -03:00
private:
GCS_MAVLINK_Plane _chan[MAVLINK_COMM_NUM_BUFFERS];
2016-08-25 04:48:27 -03:00
};