int inflight_waypoint_modify(frame_wait_confirm *frame_wait_confirm) { uint16 waypoint_id; int ret = -1; waypoint_id = frame_wait_confirm->data[CTRL_FRAME_MASK_WP_ID+1] << 8| frame_wait_confirm->data[CTRL_FRAME_MASK_WP_ID]; if (frame_wait_confirm->data[0] == WAYPOINT_INSERT) ret=waypoint_insert(frame_wait_confirm->data + CTRL_FRAME_MASK_WP_ID, waypoint_id); else if (frame_wait_confirm->data[0] == WAYPOINT_MODIFY) ret=waypoint_modify(frame_wait_confirm->data + CTRL_FRAME_MASK_WP_ID, waypoint_id); else if (frame_wait_confirm->data[0] == WAYPOINT_DELETE) ret=waypoint_delete(frame_wait_confirm->data + CTRL_FRAME_MASK_WP_ID, waypoint_id); return ret; }
int inflight_waypoint_modify(frame_wait_confirm *frame_wait_confirm) { uint16 waypoint_id; int ret = -1; waypoint_id = frame_wait_confirm->data[CTRL_FRAME_MASK_WP_ID+1] << 8| frame_wait_confirm->data[CTRL_FRAME_MASK_WP_ID]; waypoint_id ++; //way point from ground start from 0 which is the second waypoint,not current wp if (frame_wait_confirm->data[0] == WAYPOINT_INSERT) ret=waypoint_insert(frame_wait_confirm->data + CTRL_FRAME_MASK_WP_ID, waypoint_id); else if (frame_wait_confirm->data[0] == WAYPOINT_MODIFY) ret=waypoint_modify(frame_wait_confirm->data + CTRL_FRAME_MASK_WP_ID, waypoint_id); else if (frame_wait_confirm->data[0] == WAYPOINT_DELETE) ret=waypoint_delete(frame_wait_confirm->data + CTRL_FRAME_MASK_WP_ID, waypoint_id); return ret; }