示例#1
0
 public SAS(IComms comms)
 {
     Comms   = comms;
     SHA     = new SHA(comms);
     Utility = new Utility(comms);
     Crypto  = new Crypto(comms);
     Ed25519 = new Ed25519(comms);
 }
示例#2
0
        public MainVm(IComms session)
        {
            _comms = session;
            _comms.LineOfDataReceived += _session_LineOfDataReceived;

            MonitorVms = new BindingList <IPresentationModel>
            {
                new SensorsVm(),
                new TransmitterChannelsVm(),
                new FlightControlPidsVm(),
                new PositionAltitudePidsVm(),
                new GpsStatusVm(),

                //new MotorCommandsVm(session),
                new SerialMonitorVm(),
            };

            foreach (var vm in MonitorVms)
            {
                if (vm is ItalksToApm)
                {
                    vm.sendTextToApm += MainVm_sendTextToApm;
                }
            }

            ConnectCommand = new DelegateCommand(
                _ => Connect(),
                _ => _connectionState == SessionStates.Disconnected && AvailablePorts.Contains(SelectedPort));

            DisconnectCommand = new DelegateCommand(_ => Disconnect(), _ => IsConnected);

            RefreshPortListCommand = new DelegateCommand(_ => RefreshPorts());

            RestoreDefaultsCommand = new DelegateCommand(_ => RestoreDefaults(), _ => IsConnected);

            WriteToEepromCommand = new DelegateCommand(_ => WriteToEeprom(), _ => IsConnected);

            ConnectionState = SessionStates.Disconnected;

            AvailablePorts = new BindingList <string>();

            AvailableBaudRates = new BindingList <int>()
            {
                115200, 57600, 38400, 9600
            };
            SelectedBaudRate = 115200;

            RefreshPorts();

            // Initially have selected the last discovered com port.
            // I think this is more likely to be the correct one, as
            // the built in comports come first, then the usb/serial
            // converter ports
            if (AvailablePorts.Count > 0)
            {
                SelectedPort = AvailablePorts[AvailablePorts.Count - 1];
            }
        }
示例#3
0
文件: Raft.cs 项目: warcode/dkvsnet
        public Raft(string nodefile, IComms comms)
        {
            inputQueue  = comms.StartIncoming();
            outputQueue = comms.StartOutgoing();
            _host       = comms.GetLocalHost();

            electionWaitPeriod = 1500 + GetRandomWaitPeriod();

            LoadPresetNodes(nodefile);
        }
        public MainVm(IComms session)
        {
            _comms = session;
            _comms.LineOfDataReceived += _session_LineOfDataReceived;

            MonitorVms = new BindingList<IPresentationModel>
                             {
                                 new SensorsVm(),
                                 new TransmitterChannelsVm(),
                                 new FlightControlPidsVm(),
                                 new PositionAltitudePidsVm(),
                                 new GpsStatusVm(),

                                 //new MotorCommandsVm(session),
                                 new SerialMonitorVm(),
                             };

            foreach (var vm in MonitorVms)
            {
                if (vm is ItalksToApm)
                    vm.sendTextToApm += MainVm_sendTextToApm;
            }

            ConnectCommand = new DelegateCommand(
                _ => Connect(),
                _ => _connectionState==SessionStates.Disconnected && AvailablePorts.Contains(SelectedPort));

            DisconnectCommand = new DelegateCommand(_ => Disconnect(), _ => IsConnected);

            RefreshPortListCommand = new DelegateCommand(_ => RefreshPorts());

            RestoreDefaultsCommand = new DelegateCommand(_ => RestoreDefaults(), _ => IsConnected);

            WriteToEepromCommand = new DelegateCommand(_ => WriteToEeprom(), _ => IsConnected);

            ConnectionState = SessionStates.Disconnected;

            AvailablePorts = new BindingList<string>();

            AvailableBaudRates = new BindingList<int>() {115200, 57600, 38400, 9600};
            SelectedBaudRate = 115200;

            RefreshPorts();

            // Initially have selected the last discovered com port.
            // I think this is more likely to be the correct one, as 
            // the built in comports come first, then the usb/serial
            // converter ports
            if (AvailablePorts.Count > 0)
                SelectedPort = AvailablePorts[AvailablePorts.Count-1];
        }
示例#5
0
        //StreamReader streamReader;

        public SHA(IComms comms)
        {
            Comms = comms;
        }
示例#6
0
 internal Crypto(IComms comms)
 {
     Comms = comms;
 }
示例#7
0
文件: MainForm.cs 项目: othane/kowhai
        private void btnHID_Click(object sender, EventArgs e)
        {
            HidDetailsForm f = new HidDetailsForm();
            // load default settings
            f.VendorId = Settings.Default.VendorID;
            f.ProductId = Settings.Default.ProductID;
            f.UsagePage = Settings.Default.UsagePage;
            f.Usage = Settings.Default.Usage;
            f.ReportId = Settings.Default.ReportID;
            f.ReportPrefix = Convert.FromBase64String(Settings.Default.ReportPrefix);
            f.ReportSize = Settings.Default.ReportSize;
            if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                // save default settings
                Settings.Default.VendorID = f.VendorId;
                Settings.Default.ProductID = f.ProductId;
                Settings.Default.UsagePage = f.UsagePage;
                Settings.Default.Usage = f.Usage;
                Settings.Default.ReportID = f.ReportId;
                Settings.Default.ReportPrefix = Convert.ToBase64String(f.ReportPrefix);
                Settings.Default.ReportSize = f.ReportSize;
                Settings.Default.Save();

                string path = HidAPI.GetDevicePath(f.VendorId, f.ProductId, f.UsagePage, f.Usage);
                comms = new Hid(path, f.ReportId, f.ReportPrefix, f.ReportSize);
                if (comms.Connect())
                    KowhaiConnected();
                else
                    ConnectionFailed();
            }
        }
示例#8
0
文件: MainForm.cs 项目: othane/kowhai
 private void btnSocket_Click(object sender, EventArgs e)
 {
     comms = new Sock();
     if (comms.Connect())
         KowhaiConnected();
     else
         ConnectionFailed();
 }
示例#9
0
 internal Ed25519(IComms comms)
 {
     Comms = comms;
 }
示例#10
0
 public FirmwareUpdate(IComms comms)
 {
     Comms = comms;
 }
示例#11
0
 public Utility(IComms comms)
 {
     Comms = comms;
 }