Esempio n. 1
0
 public override void HandleMiscCommand(PacketCommandMini command)
 {
     if (command.PacketID == PhysLoggerPacketCommandID.SetValue)
     {
         if (command.PayLoad[0] == 0) // calibration data
         {
             int   channel = command.PayLoad[1];
             int   gain    = command.PayLoad[2];
             float inl     = BitConverter.ToSingle(command.PayLoad, 3);
             float dnl     = BitConverter.ToSingle(command.PayLoad, 7);
             INLCorrectionTable[channel, gain] = inl;
             DNLCorrectionTable[channel, gain] = dnl;
         }
         else
         {
         }
     }
     else if (command.PacketID == PhysLoggerPacketCommandID.GetValue)
     {
         if (command.PayLoad[0] == 3) // Range Change Feedback
         {
             var relatedIns = (SelectedInstruments.FindAll(ins => ins is I2CInstrument)
                               .FindAll(iIns => ((I2CInstrument)iIns).InstrumentAddress == command.PayLoad[1])).Cast <I2CInstrument>().ToList();
             foreach (var relIns in relatedIns)
             {
                 var actualRange = relIns.Ranges.Items.Find(r => r.Code == command.PayLoad[2]);
                 relIns.Ranges.Current = actualRange;
             }
         }
     }
 }
 private void SelectedInstrumentChangeHandler(IList selectedItems)
 {
     SelectedInstruments.Clear();
     SelectedInstruments.AddRange(selectedItems.Cast <Instrument>().ToList());
     SelectedInstrumentCount = SelectedInstruments.Count;
 }
        private void NewDataRequest()
        {
            var window = new Windows.HistoricalRequestWindow(SelectedInstruments.First());

            window.Show();
        }