Exemple #1
0
 public MissionClient(IMavlinkV2Connection mavlink, IPacketSequenceCalculator seq,
                      MavlinkClientIdentity identity, MissionClientConfig config)
 {
     _mavlink  = mavlink ?? throw new ArgumentNullException(nameof(mavlink));
     _seq      = seq ?? throw new ArgumentNullException(nameof(seq));
     _identity = identity ?? throw new ArgumentNullException(nameof(identity));
     _config   = config;
 }
Exemple #2
0
 public MissionClient(IMavlinkV2Connection mavlink, MavlinkClientIdentity identity, IPacketSequenceCalculator seq, MissionClientConfig config) : base(mavlink, identity, seq, "MISSION")
 {
     _config         = config;
     _missionCurrent = new RxValue <ushort>().DisposeItWith(Disposable);
     _missionReached = new RxValue <ushort>().DisposeItWith(Disposable);
     mavlink.FilterVehicle(identity).Filter <MissionCurrentPacket>().Select(_ => _.Payload.Seq).Subscribe(_missionCurrent)
     .DisposeItWith(Disposable);
     mavlink.FilterVehicle(identity).Filter <MissionItemReachedPacket>().Select(_ => _.Payload.Seq).Subscribe(_missionReached)
     .DisposeItWith(Disposable);
 }
 public VehiclePx4(IMavlinkV2Connection conn, MavlinkClientIdentity identity, MavlinkClientConfig config) : base(conn, identity, config)
 {
     _identity = identity;
     Connection
     .Where(FilterVehicle)
     .Where(_ => _.MessageId == HeartbeatPacket.PacketMessageId)
     .Cast <HeartbeatPacket>()
     .Select(_ => new Px4VehicleMode(_.Payload))
     .Subscribe(_px4Mode);
 }
Exemple #4
0
        public MavlinkTelemetry(IMavlinkV2Connection connection, MavlinkClientIdentity config)
        {
            _config       = config;
            _connection   = connection;
            _inputPackets = connection.FilterVehicle(config);

            HandleSystemStatus();
            HandleGps();
            HandleHighresImu();
            HandleVfrHud();
            HandleAttitude();
            HandleBatteryStatus();
            HandleAltitude();
            HandleExtendedSysState();
            HandleHome();
            HandleGlobalPositionInt();
            HandleRadioStatus();
        }
 public MavlinkCommandClient(IMavlinkV2Connection connection, MavlinkClientIdentity identity,
                             IPacketSequenceCalculator seq, CommandProtocolConfig config)
 {
     if (connection == null)
     {
         throw new ArgumentNullException(nameof(connection));
     }
     if (seq == null)
     {
         throw new ArgumentNullException(nameof(seq));
     }
     if (config == null)
     {
         throw new ArgumentNullException(nameof(config));
     }
     _connection = connection;
     _identity   = identity;
     _seq        = seq;
     _config     = config;
 }
 public MavlinkOffboardMode(IMavlinkV2Connection connection, MavlinkClientIdentity config)
 {
     _connection = connection;
     _config     = config;
 }
Exemple #7
0
 public MavlinkCommandClient(IMavlinkV2Connection connection, MavlinkClientIdentity identity,
                             IPacketSequenceCalculator seq, CommandProtocolConfig config) : base(connection, identity, seq, "COMMAND")
 {
     _config = config ?? throw new ArgumentNullException(nameof(config));
 }
Exemple #8
0
 public FtpClient(IMavlinkV2Connection connection, MavlinkClientIdentity identity, PacketSequenceCalculator seq)
 {
     _connection = connection;
     _identity   = identity;
     _seq        = seq;
 }
 public MavlinkOffboardMode(IMavlinkV2Connection connection, MavlinkClientIdentity config,
                            IPacketSequenceCalculator seq) : base(connection, config, seq, "OFFBOARD")
 {
 }