Ejemplo n.º 1
0
 public DJIDrone(IConnectedUasManager mgr) : base(null)
 {
     this._mgr = mgr ?? throw new ArgumentNullException(nameof(mgr));
     Task.Run(() =>
     {
         this.Init();
     });
 }
 public AccCalibrationViewModel(IConnectedUasManager connectedUasManager)
 {
     _connectedUasManager = connectedUasManager;
     DoneCommand          = new RelayCommand(Done, () => IsDone);
     BeginCommand         = new RelayCommand(Begin, () => !IsActive);
     CancelCommand        = new RelayCommand(Cancel, () => IsActive);
     NextCommand          = new RelayCommand(Next, () => IsActive);
 }
Ejemplo n.º 3
0
 public TelloDrone(IConnectedUasManager mgr, CoreDispatcher dispatcher) : base(null)
 {
     this._dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
     this._mgr        = mgr ?? throw new ArgumentNullException(nameof(mgr));
     Task.Run(() =>
     {
         this.Init();
     });
 }
Ejemplo n.º 4
0
        public NavigationViewModel(IConnectedUasManager connectedUasManager, IMissionPlanner missionPlanner, INavigation navigation)
        {
            _missionPlanner      = missionPlanner;
            _connectedUasManager = connectedUasManager;

            RemovewWaypointCommand = new RelayCommand(RemoveWaypoint);
            EditWaypointCommand    = new RelayCommand(EditWaypoint);
            MoveUpCommand          = new RelayCommand(MoveUp);
            MoveDownCommand        = new RelayCommand(MoveDown);
        }
Ejemplo n.º 5
0
 public HudViewModel(IConnectedUasManager connectedUasManager, INavigation navigation, IFlightRecorder flightRecorder, INiVekFlightStickState flightStickState)
 {
     Navigation           = navigation;
     _connectedUasManager = connectedUasManager;
     Connections          = _connectedUasManager;
     LandingGear          = new LandingGearViewModel(connectedUasManager);
     EditMissionCommand   = new RelayCommand(() => ViewModelNavigation.NavigateAsync <Missions.MissionPlannerViewModel>(this));
     UasMgr           = connectedUasManager;
     FlightRecorder   = flightRecorder;
     FlightStickState = flightStickState;
 }
Ejemplo n.º 6
0
        public DJIDrone(IConnectedUasManager mgr, CoreDispatcher dispatcher) : base(null)
        {
            Camera = new DJIServices.CameraManager();

            this._dispatcher = dispatcher;
            this._mgr        = mgr ?? throw new ArgumentNullException(nameof(mgr));
            Task.Run(() =>
            {
                this.Init();
            });
        }
Ejemplo n.º 7
0
        public Navigation(IConnectedUasManager connectUasManager, IMissionPlanner missionPlanner, IFlightRecorder flightRecorder)
        {
            _connectedUasManager = connectUasManager;
            _flightRecorder      = flightRecorder;
            MissionPlanner       = missionPlanner;


            ArmCommand    = new RelayCommand(Arm);
            DisarmCommand = new RelayCommand(Disarm);

            TakeoffCommand = new RelayCommand(Takeoff);
            LandCommand    = new RelayCommand(Land);
        }
Ejemplo n.º 8
0
        public DroneConnectViewModel(IWiFiAdaptersService adaptersSerivce, IWiFiNetworksService networkService,
                                     IConnectedUasManager connectedUasManager, IDeviceManager deviceManager)
        {
            this._adaptersService     = adaptersSerivce ?? throw new ArgumentNullException(nameof(adaptersSerivce));
            this._networkService      = networkService ?? throw new ArgumentNullException(nameof(networkService));
            this._deviceManager       = deviceManager ?? throw new ArgumentNullException(nameof(deviceManager));
            this._connectedUasManager = connectedUasManager ?? throw new ArgumentNullException(nameof(connectedUasManager));

            this.ConnectAPMCommand      = new RelayCommand(ConnectAPM);
            this.ConnectTelloCommand    = new RelayCommand(ConnectTello);
            this.ConnectMavicAirCommand = new RelayCommand(ConnectMavicAir);
            this.ConnectMavicProCommand = new RelayCommand(ConnectMavicPro);
        }
 public FlightViewModel(IConnectedUasManager connectedUasManager, INavigation navigation, IFlightRecorder flightRecorder, INiVekFlightStick flightStick)
 {
     Navigation             = navigation;
     _connectedUasManager   = connectedUasManager;
     Connections            = _connectedUasManager;
     LandingGear            = new LandingGearViewModel(connectedUasManager);
     EditMissionCommand     = new RelayCommand(() => ViewModelNavigation.NavigateAsync <Missions.MissionPlannerViewModel>(this));
     CalibrateGimbleCommand = new RelayCommand(() => UasMgr.Active.Uas.Camera.Calibrate());
     UasMgr                    = connectedUasManager;
     FlightRecorder            = flightRecorder;
     FlightStickState          = flightStick.State;
     flightStick.StateUpdated += FlightStick_StateUpdated;
     flightStick.TakeOff      += FlightStick_TakeOff;
     flightStick.Land         += FlightStick_Land;
 }
 public MissionPlanner(IConnectedUasManager uasMgr)
 {
     this._uasMgr = uasMgr;
 }
        public MissionPlannerViewModel(IConnectedUasManager connectedUasManager, INavigation navigation)
        {
            Navigation = navigation;

            _connectedUasManager = connectedUasManager;
        }
Ejemplo n.º 12
0
        public MainViewModel(IMissionPlanner planner, IHeartBeatManager heartBeatManager, ITelemetryService telemetryService, IConnectedUasManager connectedUasManager)
        {
            _telemetryService = telemetryService;
            _heartBeatManager = heartBeatManager;

            Connections = connectedUasManager;

            Connections.ActiveDroneChanged += Connections_ActiveDroneChanged;

            var transport = new SerialPortTransport(DispatcherServices);

            //Connections.Active = new ConnectedUas(new APM(null), transport);
            //Connections.All.Add(Connections.Active);
            //Connections.Active.Transport.OnMessageReceived += _telemeteryLink_MessageParsed;

            //TelemetryLink.MessageParsed += _telemeteryLink_MessageParsed;
            OpenSerialPortCommand     = new RelayCommand(HandleConnectClick, CanPressConnect);
            ShowMissionPlannerCommand = new RelayCommand(() => ViewModelNavigation.NavigateAsync <Missions.MissionPlannerViewModel>(this), CanDoConnectedStuff);
            StartDataStreamsCommand   = new RelayCommand(() => _telemetryService.Start(Connections.Active.Uas, Connections.Active.Transport), CanDoConnectedStuff);
            StopDataStreamsCommand    = new RelayCommand(() => _telemetryService.Stop(Connections.Active.Transport), CanDoConnectedStuff);
            BeginCalibrationCommand   = new RelayCommand(() => ViewModelNavigation.NavigateAsync <Calibration.AccCalibrationViewModel>(this), CanDoConnectedStuff);
            FlyNowCommand             = new RelayCommand(() => ViewModelNavigation.NavigateAsync <HudViewModel>(this), CanDoConnectedStuff);
            MotorTestCommand          = new RelayCommand(() => ViewModelNavigation.NavigateAsync <Testing.MotorsTestViewModel>(this), CanDoConnectedStuff);

            Title = "UAS NuvIoT Connector";

            _planner = planner;

            MenuItems = new List <MenuItem>()
            {
                new MenuItem()
                {
                    Command     = new RelayCommand(() => ViewModelNavigation.NavigateAsync <UasTypeManagerViewModel>(this)),
                    Name        = "Settings",
                    FontIconKey = "fa-users"
                },
                new MenuItem()
                {
                    Command     = new RelayCommand(() => ViewModelNavigation.NavigateAsync <UserOrgsViewModel>(this)),
                    Name        = ClientResources.MainMenu_SwitchOrgs,
                    FontIconKey = "fa-users"
                },
                new MenuItem()
                {
                    Command     = new RelayCommand(() => ViewModelNavigation.NavigateAsync <ChangePasswordViewModel>(this)),
                    Name        = ClientResources.MainMenu_ChangePassword,
                    FontIconKey = "fa-key"
                },
                new MenuItem()
                {
                    Command     = new RelayCommand(() => ViewModelNavigation.NavigateAsync <InviteUserViewModel>(this)),
                    Name        = ClientResources.MainMenu_InviteUser,
                    FontIconKey = "fa-user"
                },
                new MenuItem()
                {
                    Command     = new RelayCommand(() => ViewModelNavigation.NavigateAsync <AboutViewModel>(this)),
                    Name        = "About",
                    FontIconKey = "fa-info"
                },
                new MenuItem()
                {
                    Command     = new RelayCommand(() => Logout()),
                    Name        = ClientResources.Common_Logout,
                    FontIconKey = "fa-sign-out"
                }
            };

            this.RefreshUI();
        }
Ejemplo n.º 13
0
 public LandingGearViewModel(IConnectedUasManager connectedUasManager)
 {
     _connectedUasManager    = connectedUasManager;
     RaiseLandingGearCommand = new RelayCommand(RaiseLandingGear);
     LowerLandingGearCommand = new RelayCommand(LowerLandingGear);
 }
 public MotorsTestViewModel(IConnectedUasManager mgr)
 {
     _mgr             = mgr;
     StartTestCommand = new RelayCommand(StartTest);
     StopTestCommand  = new RelayCommand(StopTest);
 }