Esempio n. 1
0
        public DroneControls(DroneClient client, AnalyzerOutput output, Config configuration, Pilot.Controller autopilot)
        {
            InitializeComponent();
            analyzerOutput = output;
            config         = configuration;
            droneClient    = client;
            droneClient.NavigationDataAcquired += DroneClient_NavigationDataAcquired;
            droneController = autopilot;

            this.KeyDown += DroneControls_KeyDown;
        }
Esempio n. 2
0
        void configDrone()
        {
            if (droneClient != null)
            {
                droneClient.VideoPacketAcquired -= OnVideoPacketAcquired;
            }
            droneClient?.Stop();
            droneClient?.Dispose();
            iotController = null;
            autoPilot?.Stop();
            autoPilot = null;
            videoPacketDecoderWorker?.Stop();
            videoPacketDecoderWorker?.Dispose();

            Logger.LogInfo($"Configuring Drone at {config.DroneIP}");
            droneClient = new DroneClient(config.DroneIP);
            droneClient.VideoPacketAcquired += OnVideoPacketAcquired;
            videoPacketDecoderWorker         = new VideoPacketDecoderWorker(AR.Drone.Video.PixelFormat.BGR24, true, OnVideoPacketDecoded);
            videoPacketDecoderWorker.Start();

            iotController = new IoTHubController(droneClient, analyzerOutput, bitmaps);
            autoPilot     = new Pilot.Controller(droneClient, analyzerOutput, config, iotController);
        }