File tree of an Air SDK Mission#

The following is the file structure of an Air SDK Mission:

[mission_name]
└ packages
  └ [mission_name]
    ├ autopilot─plugins ─ Directory of fsup and guidance
    │ ├ fsup ──────────── Flight supervisor (fsup) directory
    │ │ ├ critical ────┐
    │ │ ├ flying       │
    │ │ ├ ground       │─ Defaults stages directories:
    │ │ ├ hovering     │      contains states
    │ │ ├ landing      │
    │ │ ├ takeoff  ────┘
    │ │ ├ __init__.py
    │ │ └ mission.py ──── Main mission file: contains the stages transitions
    │ ├ guidance ──────── Guidance is in charge of trajectory generation for the drone and the cameras (front and stereo).
    │ │ ├ native ──────── If the guidance modes are coded/written in C++ the corresponding files are in this directory
    │ │ ├ protobuf ────── Guidance <-> Fsup messages description directory
    │ │ └ python ──────── If the guidance modes are coded/written in python the corresponding files are in this directory
    │ └ atom.mk ───────── Autopilot─plugins build file
    ├ messages
    │ ├ protobuf ──────── Fsup <─> ground application messages description directory
    │ └ atom.mk ───────── Messages build file
    └ service ─────────── Services are standalone processes dedicated to a specific Air SDK mission.
      └ [service_name]
        ├ native ──────── If the service is coded/written in C++ the corresponding files are in this directory
        ├ protobuf ────── Service <-> Fsup messages description directory
        ├ python ──────── If python is used
        └ atom.mk ─────── Service build file