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;
 }
        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);
        }
Beispiel #3
0
        public MainPage()
        {
            _flightStick = new Controller.NiVekFlightStick(Dispatcher);

            this.InitializeComponent();

            _flightRecorder = SLWIOC.Get <IFlightRecorder>();

            var uasMgr         = SLWIOC.Get <IConnectedUasManager>();
            var missionPlanner = new MissionPlanner(uasMgr);

            _navigation   = new LagoVista.Uas.Core.Services.Navigation(uasMgr, missionPlanner, _flightRecorder);
            _hudViewModel = new HudViewModel(uasMgr, _navigation, _flightRecorder, _flightStick.State);
            _timer        = new Timer(Timer_callBack, null, 100, 100);
        }
 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;
 }