|
|
|
@ -50,22 +50,22 @@ class DataFlash_Class
@@ -50,22 +50,22 @@ class DataFlash_Class
|
|
|
|
|
public: |
|
|
|
|
FUNCTOR_TYPEDEF(print_mode_fn, void, AP_HAL::BetterStream*, uint8_t); |
|
|
|
|
FUNCTOR_TYPEDEF(vehicle_startup_message_Log_Writer, void); |
|
|
|
|
DataFlash_Class(const char *firmware_string, const AP_Int32 &log_bitmask) : |
|
|
|
|
_firmware_string(firmware_string), |
|
|
|
|
_log_bitmask(log_bitmask) |
|
|
|
|
{ |
|
|
|
|
AP_Param::setup_object_defaults(this, var_info); |
|
|
|
|
if (_instance != nullptr) { |
|
|
|
|
AP_HAL::panic("DataFlash must be singleton"); |
|
|
|
|
} |
|
|
|
|
_instance = this; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static DataFlash_Class create(const char *firmware_string, const AP_Int32 &log_bitmask) { |
|
|
|
|
return DataFlash_Class{firmware_string, log_bitmask}; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// get singleton instance
|
|
|
|
|
static DataFlash_Class *instance(void) { |
|
|
|
|
return _instance; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
constexpr DataFlash_Class(DataFlash_Class &&other) = default; |
|
|
|
|
|
|
|
|
|
/* Do not allow copies */ |
|
|
|
|
DataFlash_Class(const DataFlash_Class &other) = delete; |
|
|
|
|
DataFlash_Class &operator=(const DataFlash_Class&) = delete; |
|
|
|
|
|
|
|
|
|
void set_mission(const AP_Mission *mission); |
|
|
|
|
|
|
|
|
|
// initialisation
|
|
|
|
@ -222,6 +222,8 @@ protected:
@@ -222,6 +222,8 @@ protected:
|
|
|
|
|
bool is_critical); |
|
|
|
|
|
|
|
|
|
private: |
|
|
|
|
DataFlash_Class(const char *firmware_string, const AP_Int32 &log_bitmask); |
|
|
|
|
|
|
|
|
|
#define DATAFLASH_MAX_BACKENDS 2 |
|
|
|
|
uint8_t _next_backend; |
|
|
|
|
DataFlash_Backend *backends[DATAFLASH_MAX_BACKENDS]; |
|
|
|
|