Add suport for Memory Constrained systems

This commit is contained in:
David Sidrane 2016-09-22 11:08:25 -10:00 committed by Lorenz Meier
parent 979381fcfa
commit 44b5b52bcb
2 changed files with 20 additions and 2 deletions

View File

@ -60,6 +60,20 @@ typedef enum {
#define DM_KEY_WAYPOINTS_OFFBOARD(_id) (_id == 0 ? DM_KEY_WAYPOINTS_OFFBOARD_0 : DM_KEY_WAYPOINTS_OFFBOARD_1)
#if defined(MEMORY_CONSTRAINED_SYSTEM)
enum {
DM_KEY_SAFE_POINTS_MAX = 8,
#ifdef __cplusplus
DM_KEY_FENCE_POINTS_MAX = fence_s::GEOFENCE_MAX_VERTICES,
#else
DM_KEY_FENCE_POINTS_MAX = GEOFENCE_MAX_VERTICES,
#endif
DM_KEY_WAYPOINTS_OFFBOARD_0_MAX = NUM_MISSIONS_SUPPORTED,
DM_KEY_WAYPOINTS_OFFBOARD_1_MAX = NUM_MISSIONS_SUPPORTED,
DM_KEY_WAYPOINTS_ONBOARD_MAX = (NUM_MISSIONS_SUPPORTED / 10),
DM_KEY_MISSION_STATE_MAX = 1
};
#else
/** The maximum number of instances for each item type */
enum {
DM_KEY_SAFE_POINTS_MAX = 8,
@ -73,7 +87,7 @@ enum {
DM_KEY_WAYPOINTS_ONBOARD_MAX = NUM_MISSIONS_SUPPORTED,
DM_KEY_MISSION_STATE_MAX = 1
};
#endif
/** Data persistence levels */
typedef enum {
DM_PERSIST_POWER_ON_RESET = 0, /* Data survives all resets */

View File

@ -45,7 +45,11 @@
#include <stdint.h>
#include <stdbool.h>
#define NUM_MISSIONS_SUPPORTED 256
#if defined(MEMORY_CONSTRAINED_SYSTEM)
# define NUM_MISSIONS_SUPPORTED 50
#else
# define NUM_MISSIONS_SUPPORTED 256
#endif
#define NAV_EPSILON_POSITION 0.001f /**< Anything smaller than this is considered zero */