private void SignalDeviceChange(StkStateChange state, DEV_BROADCAST_STK500 volume) { string name = ToUnitName(volume.dbcv_unitmask); var board = new StkBoard(name, volume.dbcv_devicetype, state); _eventAggregator.GetEvent<STKConnectionEvent>().Publish(board); }
private void BoardChangeHandler(StkBoard obj) { if(obj.State == StkStateChange.Added) { _vm.AvailableBoards.Add(obj); if (_vm.SelectedBoard == null) _vm.SelectedBoard = obj; } else { foreach(var board in _vm.AvailableBoards) { if(board.ComPort == obj.ComPort) { _vm.AvailableBoards.Remove(board); break; } } } }
/// <summary> /// Initialize a new instance with the specified state and disk. /// </summary> /// <param name="state">The state change code.</param> /// <param name="disk">The USB disk description.</param> public UsbStateChangedEventArgs(StkStateChange state, StkBoard disk) { State = state; Disk = disk; }