Namespace MavNet.PX4.Vehicles
Classes
- Drone
A multirotor vehicle. Currently a thin marker over Vehicle so consumers can pattern-match on type (
if (v is Drone)) and so we have a clear extension point for multirotor-specific behaviour later. The mission protocol surface (upload / download / clear / fence / rally) lives on Vehicle since boats, rovers, and planes use the same protocol.The static ConnectAsync(string, TimeSpan, ILogger<MavlinkConnection>?, ILogger<Vehicle>?, CancellationToken) factory is the one-liner entry point for the common case: parse URI → open MavlinkConnection → wait for first heartbeat → return a Drone that owns the connection.
Structs
- DroneState
Immutable per-fire snapshot of a Drone's observable state. Captured atomically when SubscribeState(Action<DroneState>, StateRate) delivers, so consumers see a coherent view (no torn reads across separate property gets). Use this overload from telemetry recorders, replay, and anywhere a handler might run on a different thread from the receive loop.