You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
880 B
37 lines
880 B
#pragma once |
|
|
|
#include <AP_Arming/AP_Arming.h> |
|
|
|
/* |
|
a plane specific arming class |
|
*/ |
|
class AP_Arming_Plane : public AP_Arming |
|
{ |
|
public: |
|
AP_Arming_Plane() |
|
: AP_Arming() |
|
{ |
|
AP_Param::setup_object_defaults(this, var_info); |
|
} |
|
|
|
/* Do not allow copies */ |
|
AP_Arming_Plane(const AP_Arming_Plane &other) = delete; |
|
AP_Arming_Plane &operator=(const AP_Arming_Plane&) = delete; |
|
|
|
bool pre_arm_checks(bool report) override; |
|
bool arm_checks(AP_Arming::Method method) override; |
|
|
|
// var_info for holding Parameter information |
|
static const struct AP_Param::GroupInfo var_info[]; |
|
|
|
bool disarm(AP_Arming::Method method) override; |
|
bool arm(AP_Arming::Method method, bool do_arming_checks=true) override; |
|
|
|
void update_soft_armed(); |
|
|
|
protected: |
|
bool ins_checks(bool report) override; |
|
|
|
private: |
|
void change_arm_state(void); |
|
};
|
|
|