Browse Source

dataman: extend module documentation

sbg
Beat Küng 8 years ago
parent
commit
cf5df4489f
  1. 9
      src/modules/dataman/dataman.cpp

9
src/modules/dataman/dataman.cpp

@ -1470,6 +1470,15 @@ Multiple backends are supported: @@ -1470,6 +1470,15 @@ Multiple backends are supported:
It is used to store structured data of different types: mission waypoints, mission state and geofence polygons.
Each type has a specific type and a fixed maximum amount of storage items, so that fast random access is possible.
### Implementation
Reading and writing a single item is always atomic. If multiple items need to be read/modified atomically, there is
an additional lock per item type via `dm_lock`.
**DM_KEY_FENCE_POINTS** and **DM_KEY_SAFE_POINTS** items: the first data element is a `mission_stats_entry_s` struct,
which stores the number of items for these types. These items are always updated atomically in one transaction (from
the mavlink mission manager). During that time, navigator will try to acquire the geofence item lock, fail, and will not
check for geofence violations.
)DESCR_STR");
PRINT_MODULE_USAGE_NAME("dataman", "system");

Loading…
Cancel
Save