public void _0001() { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 if (_ServerInstance == null || facadeInstance == null) { throw new InvalidOperationException("Must call Init first"); } if (m_ManagerInstance == (SourceMode)0) { m_ManagerInstance = (SourceMode)1; stateInstance.Set(); ThreadPool.QueueUserWorkItem(delegate { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 QueryDic(); }, null); } else if (m_ManagerInstance == (SourceMode)2) { ExcludeDic(); stateInstance.Set(); } }
private void buttonOk_Click(object sender, EventArgs e) { paramName = comboBoxParameter.Text; if (radioSelectedElements.Checked) { writerMode = WriterMode.OnlySelected; } if (radioViewElements.Checked) { writerMode = WriterMode.OnCurrentView; } if (radioAllElements.Checked) { writerMode = WriterMode.AllInProject; } if (radioButtonWriteValue.Checked) { sourceMode = SourceMode.FixValue; source = comboBoxValue.Text; } if (radioButtonWriteOtherPAram.Checked) { sourceMode = SourceMode.OtherParameter; source = comboBoxSourceParameter.Text; } this.DialogResult = DialogResult.OK; this.Close(); }
private void CancelDic() { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 while (m_ManagerInstance != 0) { if (!stateInstance.WaitOne(this._0001())) { _ = m_ManagerInstance; _ = 1; } if (m_ManagerInstance != (SourceMode)1) { continue; } int num = 0; FactoryInstance[] serverInstance = _ServerInstance; foreach (FactoryInstance factoryInstance in serverInstance) { if (factoryInstance._0002() || factoryInstance.ValidateError()) { num++; } } if (num == 0) { m_ManagerInstance = (SourceMode)0; stateInstance.Set(); } } }
public TimeTraceSingleMeasurement(string fileName, SourceMode sourceMode) { this._FileName = fileName; _OutputSingleMeasureStream = new FileStream(fileName, FileMode.Create, FileAccess.Write); _OutputSingleMeasureStreamWriter = new StreamWriter(_OutputSingleMeasureStream); switch (sourceMode) { case SourceMode.Voltage: { _Header = "Distance\tI"; _Subheader = "m\tA"; } break; case SourceMode.Current: { _Header = "Distance\tU"; _Subheader = "m\tV"; } break; default: break; } _OutputSingleMeasureStreamWriter.WriteLine(_Header); _OutputSingleMeasureStreamWriter.WriteLine(_Subheader); _OutputSingleMeasureStreamWriter.Close(); _OutputSingleMeasureStream.Close(); _DataBuilder = new StringBuilder(); _DataString = "{0}\t{1}"; AllEventsHandler.Instance.TimetracePointReceived += OnTimeTracePointReceived; }
private void SetDefaults() { _instrument = _dataManager.AvailableInstruments.FirstOrDefault(x => x.Symbol == "INDU"); _timeFrame = _dataManager.GetAvailableTimeFrames(_instrument).First(); _chartType = ChartType.FastCandlestick; _sourceMode = SourceMode.AllVisibleSeries; }
public void _0001(ProccesorEventEntry item) { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 if (m_ManagerInstance != 0) { throw new InvalidOperationException("Can't re-initialize during playback"); } if (m_RepositoryInstance != IntPtr.Zero) { InitDic(); ManageDic(); } stateInstance = new AutoResetEvent(initialState: false); facadeInstance = item; int selection = item._0001().StartDic((this._0001() + this._0002() - 1) / this._0002()); MathOperator key; lock (m_WatcherInstance) { key = QueueBroadcasterFilter.ReflectDic(out m_RepositoryInstance, (IntPtr)_0003(), facadeInstance._0001(), stateInstance.SafeWaitHandle.DangerousGetHandle(), IntPtr.Zero, (QueueBroadcasterFilter.EventAttributes) 327680); } FacadePropertyStruct.VisitDic(key, "waveOutOpen"); _ServerInstance = new FactoryInstance[this._0002()]; m_ManagerInstance = (SourceMode)0; for (int i = 0; i < this._0002(); i++) { _ServerInstance[i] = new FactoryInstance(m_RepositoryInstance, selection, facadeInstance, m_WatcherInstance); } }
public static extern Result AddSourceWithOrientation( IntPtr ctx, SourceMode mode, float[] position, float[] front, float[] up, float radius, ref int sourceId, bool isAsync);
public MeasureIV(double startVal, double endVal, double step, int numberOfAverages, double timeDelay, SourceMode deviceSourceMode, I_SMU device) { _StartValue = startVal; _EndValue = endVal; _Step = step; _NumberOfAverages = numberOfAverages; _TimeDelay = timeDelay; _sourceMode = deviceSourceMode; _Device = device; }
public static ISource CreateSource(SourceMode m, object args) { switch (m) { case SourceMode.Arduino: return(CreateArduinoSource(args)); default: throw new Exception("Invalid SourceMode"); } }
public static ISource CreateSource(SourceMode m, object args) { switch (m) { case SourceMode.Arduino: return(new Arduino.Source((Objects.ArduinoSourceFactoryArgs)args)); default: throw new Exception("Invalid SourceMode"); } }
public void _0002() { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 if (Monitor.TryEnter(_ClientInstance, 50)) { errorInstance = (SourceMode)0; Monitor.Exit(_ClientInstance); } else if (m_IssuerInstance != null) { m_IssuerInstance.Abort(); m_IssuerInstance = null; } }
private void SeSourceMode(SourceMode value, bool isForce = false) { if (_sourceMode != value || isForce) { _sourceMode = value; if (_sourceMode == SourceMode.WebCamStream) { SetSourceWebCamStream(_webCamStream, true); } else { SetWebCamTexture(_webCamTexture, true); } } }
private void ExcludeDic() { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 if (m_ManagerInstance == (SourceMode)2) { MathOperator mathOperator; lock (m_WatcherInstance) { mathOperator = QueueBroadcasterFilter.RestartDic(m_RepositoryInstance); } if (mathOperator != 0) { throw new FacadePropertyStruct(mathOperator, "waveOutRestart"); } m_ManagerInstance = (SourceMode)1; } }
public void _0002() { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 if (m_ManagerInstance != 0) { m_ManagerInstance = (SourceMode)0; MathOperator mathOperator; lock (m_WatcherInstance) { mathOperator = QueueBroadcasterFilter.ResetDic(m_RepositoryInstance); } if (mathOperator != 0) { throw new FacadePropertyStruct(mathOperator, "waveOutReset"); } stateInstance.Set(); } }
private void QueryDic() { //Discarded unreachable code: IL_0002 //IL_0003: Incompatible stack heights: 0 vs 1 Exception key = null; try { CancelDic(); } catch (Exception ex) { key = ex; } finally { m_ManagerInstance = (SourceMode)0; DefineDic(key); } }
public ExchangeRateProvider(SourceMode mode) { switch (mode) { case SourceMode.Generate: GenerateSourceRates(); break; case SourceMode.File: LoadSourceRatesFromFile(); break; case SourceMode.Server: RetrieveSourceRatesFromServer(); break; default: throw new NotImplementedException(mode.ToString()); } }
void UpdateClones() { if (lastSourceMode != sourceMode) { lastSourceMode = sourceMode; forceUpdateClones = true; } if (clones.Length == (int)n && !forceUpdateClones) { return; } sources.RemoveAll(source => source == null); for (int i = transform.childCount - 1; i >= 0; i--) { DestroyImmediate(transform.GetChild(i).gameObject); } sourcesPSR.Clear(); foreach (var source in sources) { sourcesPSR.Add(PSR.from(source)); } clones = new GameObject[(int)n]; clonesSourceRef = new GameObject[(int)n]; for (int i = 0; i < n; i++) { GameObject source = GetSource(i); clonesSourceRef [i] = source; clones [i] = Instantiate(source); clones [i].transform.SetParent(transform); } forceUpdateClones = false; }
public double MeasurePower(double valueThroughTheStructure, int NumberOfAverages, double TimeDelay, SourceMode sourceMode) { double measuredPower; KEITHLEY_2601A_SourceMode _sourceMode = KEITHLEY_2601A_SourceMode.Voltage; switch (sourceMode) { case SourceMode.Voltage: { _sourceMode = KEITHLEY_2601A_SourceMode.Voltage; } break; case SourceMode.Current: { _sourceMode = KEITHLEY_2601A_SourceMode.Current; } break; default: break; } var measuredPowerString = MeasureResistanceOrPowerValueInChannel(_SelectedChannel, _sourceMode, KEITHLEY_2601A_MeasureMode.Power, valueThroughTheStructure, NumberOfAverages, TimeDelay).TrimEnd('\n'); var isSucceed = double.TryParse(measuredPowerString, style, culture, out measuredPower); if (isSucceed) { return(measuredPower); } else { return(double.NaN); } }
/// <summary> /// Enable controlling the motor voltage with feedback from the specifed mode. /// </summary> /// <remarks> /// After calling this you must call <see cref="EnableControl()"/> or <see cref="EnableControl(double)"/> /// to enable the device. /// </remarks> /// <param name="mode">The <see cref="SourceMode"/> to set the controller to.</param> /// <param name="codesPerRev">The number of codes per revolution on the encoder or potentiometer.</param> public void SetVoltageMode(SourceMode mode = SourceMode.None, int codesPerRev = 0) { ChangeControlMode(ControlMode.Voltage); switch (mode) { case SourceMode.Encoder: SetPositionReference(LM_REF_NONE); SetSpeedReference(LM_REF_ENCODER); EncoderCodesPerRev = codesPerRev; break; case SourceMode.QuadEncoder: SetPositionReference(LM_REF_ENCODER); SetSpeedReference(LM_REF_QUAD_ENCODER); EncoderCodesPerRev = codesPerRev; break; case SourceMode.Potentiometer: SetPositionReference(LM_REF_POT); SetSpeedReference(LM_REF_NONE); PotentiometerTurns = 1; break; default: SetPositionReference(LM_REF_NONE); SetSpeedReference(LM_REF_NONE); break; } }
/// <summary> /// Enable controlling the motor current with a PID loop based on the specifed source. /// </summary> /// <remarks> /// After calling this you must call <see cref="EnableControl()"/> or <see cref="EnableControl(double)"/> /// to enable the device. /// </remarks> /// <param name="p">The proportional gain of the Jaguar's PID controller</param> /// <param name="i">The integral gain of the Jaguar's PID controller</param> /// <param name="d">The derivative gain of the Jaguar's PID controller</param> /// <param name="mode">The <see cref="SourceMode"/> to set the controller to.</param> /// <param name="codesPerRev">The number of codes per revolution on the encoder or potentiometer.</param> public void SetCurrentMode(double p, double i, double d, SourceMode mode = SourceMode.None, int codesPerRev = 0) { ChangeControlMode(ControlMode.Current); switch (mode) { case SourceMode.Encoder: SetPositionReference(LM_REF_NONE); SetSpeedReference(LM_REF_NONE); EncoderCodesPerRev = codesPerRev; SetPID(p, i, d); break; case SourceMode.QuadEncoder: SetPositionReference(LM_REF_ENCODER); SetSpeedReference(LM_REF_QUAD_ENCODER); EncoderCodesPerRev = codesPerRev; SetPID(p, i, d); break; case SourceMode.Potentiometer: SetPositionReference(LM_REF_POT); SetSpeedReference(LM_REF_NONE); PotentiometerTurns = 1; SetPID(p, i, d); break; default: SetPositionReference(LM_REF_NONE); SetSpeedReference(LM_REF_NONE); SetPID(p, i, d); break; } }
/// <summary> /// Запись в элемент значения параметра /// </summary> /// <param name="elem">Элемент для записи</param> /// <param name="targetParamName">Имя параметр, в который будем записывать</param> /// <param name="source">Фиксированное значения для записи или имя параметра-источника</param> /// <param name="sourceMode">Определяет, будет записывать фиксирвоанное значение или будет копировать из другого параметра</param> public static void SetValue(Element elem, string targetParamName, string source, SourceMode sourceMode) { Parameter targetParam = elem.LookupParameter(targetParamName); if (targetParam == null) { return; } if (targetParam.IsReadOnly) { return; } switch (sourceMode) { case SourceMode.FixValue: SetFixValue(targetParam, source); break; case SourceMode.OtherParameter: Parameter sourceParam = elem.LookupParameter(source); SetValueByParam(sourceParam, targetParam); break; } }
/// <summary> /// Sets the source source mode. /// </summary> /// <param name="sourceMode"> /// The source mode. /// </param> /// <returns> /// The <see cref="WeakBinding"/>. /// </returns> public WeakBinding SetSourceBindMode(SourceMode sourceMode) { this.BindSource.SourceMode = sourceMode; return(this); }
private void _SetFixedSourceMode(SourceMode mode) { if (mode != _currentFixedSourceMode) { switch (mode) { case SourceMode.Voltage: { _currentFixedSourceMode = mode; _driver.SendCommandRequest(":SOUR:VOLT:MODE FIX"); } break; case SourceMode.Current: { _currentFixedSourceMode = mode; _driver.SendCommandRequest(":SOUR:CURR:MODE FIX"); } break; default: break; } } }
public void SetCompliance(SourceMode sourceMode, double compliance) { switch (sourceMode) { case SourceMode.Voltage: { var _compliance = compliance; if (compliance < _minCurrentCompliance) _compliance = _minCurrentCompliance; else if (compliance > _maxCurrentCompliance) _compliance = _maxCurrentCompliance; if (_compliance != _currentCurrentCompliance) _currentCurrentCompliance = _compliance; } break; case SourceMode.Current: { var _compliance = compliance; if (compliance < _minVoltageCompliance) _compliance = _minVoltageCompliance; else if (compliance > _maxVoltageCompliance) _compliance = _maxVoltageCompliance; if (_compliance != _currentVoltageCompliance) _currentVoltageCompliance = _compliance; } break; default: break; } }
public static extern Result AddSource( IntPtr ctx, SourceMode sourceMode, float[] position, ref int sourceId, bool isAsync);
private bool InitTimeTraceMeasurements() { #region SMU, rendering and save data configurations if (sourceDeviceConfiguration != null) { #region Chart rendering settings if (_TimeTraceLineGraph != null) { _experimentalTimeTraceDataSource.DetachPointReceiveEvent(); _TimeTraceLineGraph.Remove(); _CurrentTimeTrace.Clear(); } _CurrentTimeTrace = new List <PointD>(); _experimentalTimeTraceDataSource = new ExperimentalTimetraceDataSource(_CurrentTimeTrace); _experimentalTimeTraceDataSource.AttachPointReceiveEvent(); _TimeTraceLineGraph = new LineGraph(_experimentalTimeTraceDataSource); _TimeTraceLineGraph.AddToPlotter(chartTimeTrace); #endregion //Getting SMU device Device = sourceDeviceConfiguration.Keithley2602A_DeviceSettings.Device; #region Time trace measurement configuration var pAddress = sourceDeviceConfiguration.Keithley2602A_DeviceSettings.DeviceSettings.PrimaryAddress; var sAddress = sourceDeviceConfiguration.Keithley2602A_DeviceSettings.DeviceSettings.SecondaryAddress; var bNumber = sourceDeviceConfiguration.Keithley2602A_DeviceSettings.DeviceSettings.BoardNumber; var motor = new ORDINARY_MOTOR(pAddress, sAddress, bNumber); motor.FinalDestination = 0.0; Motor = motor; if (TimeTraceCurve != null) { TimeTraceCurve.Dispose(); } var ExperimentSettings = IV_And_TimeTraceViewModel.Instance; var valueThroughTheStructure = ExperimentSettings.TimeTraceMeasurementValueThrougtTheStructure; var isTimeTraceVoltageModeChecked = ExperimentSettings.IsTimeTraceMeasurementVoltageModeChecked; var isTimeTraceCurrentModeChecked = ExperimentSettings.IsTimeTraceMeasurementCurrentModeChecked; var selectedTimeTraceModeItem = (tabControlTimeTraceMeasurementParameters.SelectedItem as TabItem).Header.ToString(); switch (selectedTimeTraceModeItem) { case "Distance": { var motionStartPosition = ExperimentSettings.TimeTraceMeasurementMotionCurrentDestination; var motionFinalDestination = ExperimentSettings.TimeTraceMeasurementMotionFinalDestination; if (isTimeTraceVoltageModeChecked == true) { TimeTraceCurve = new MeasureTimeTrace(Motor, motionStartPosition, motionFinalDestination, Device, KEITHLEY_2601A_SourceMode.Voltage, KEITHLEY_2601A_MeasureMode.Resistance, valueThroughTheStructure); } else if (isTimeTraceCurrentModeChecked == true) { TimeTraceCurve = new MeasureTimeTrace(Motor, motionStartPosition, motionFinalDestination, Device, KEITHLEY_2601A_SourceMode.Current, KEITHLEY_2601A_MeasureMode.Resistance, valueThroughTheStructure); } } break; case "Distance (Repetitive)": { var motionRepetitiveStartPosition = ExperimentSettings.TimeTraceMeasurementDistanceRepetitiveStartPosition; var motionRepetitiveEndPosition = ExperimentSettings.TimeTraceMeasurementDistanceRepetitiveEndPosition; var numerCycles = ExperimentSettings.TimeTraceMeasurementDistanceRepetitiveNumberCycles; if (isTimeTraceVoltageModeChecked == true) { TimeTraceCurve = new MeasureTimeTrace(Motor, motionRepetitiveStartPosition, motionRepetitiveEndPosition, Device, KEITHLEY_2601A_SourceMode.Voltage, KEITHLEY_2601A_MeasureMode.Resistance, valueThroughTheStructure); } else if (isTimeTraceCurrentModeChecked == true) { TimeTraceCurve = new MeasureTimeTrace(Motor, motionRepetitiveStartPosition, motionRepetitiveEndPosition, Device, KEITHLEY_2601A_SourceMode.Current, KEITHLEY_2601A_MeasureMode.Resistance, valueThroughTheStructure); } } break; case "Time": { } break; case "Fixed R": { } break; default: break; } #endregion #region Saving Time Trace data into files var _TimeTraceFileNumber = String.Format("_{0}{1}{2}", (_TimeTraceFilesCounter / 100) % 10, (_TimeTraceFilesCounter / 10) % 10, _TimeTraceFilesCounter % 10); string newFileName = string.Empty; if (!string.IsNullOrEmpty(_SaveTimeTraceMeasuremrentFileName)) { _TimeTraceMeasurementLog = new TimeTraceMeasurementLog((new FileInfo(_SaveTimeTraceMeasuremrentFileName)).DirectoryName + "\\TimeTraceMeasurementLog.dat"); newFileName = _SaveTimeTraceMeasuremrentFileName.Insert(_SaveTimeTraceMeasuremrentFileName.LastIndexOf('.'), _TimeTraceFileNumber); ++_TimeTraceFilesCounter; } string sourceMode = string.Empty; if (!string.IsNullOrEmpty(_SaveTimeTraceMeasuremrentFileName)) { string fileName = (new FileInfo(newFileName)).Name; if (this.radioTimeTraceSourceVoltage.IsChecked == true) { sourceMode = "Source mode: Voltage"; } else if (this.radioTimeTraceSourceCurrent.IsChecked == true) { sourceMode = "SourceMode: Current"; } double micrometricBoltPosition = double.NaN; double.TryParse(this.textBoxTimeTraceMicrometricBoltPosition.Text, numberStyle, culture, out micrometricBoltPosition); string comment = this.textBoxTimeTraceComment.Text; _TimeTraceMeasurementLog.AddNewTimeTraceMeasurementLog(fileName, sourceMode, valueThroughTheStructure, comment); } SourceMode _sourceMode = SourceMode.Voltage; //Source mode is voltage by default if (sourceMode == "Source mode: Voltage") { _sourceMode = SourceMode.Voltage; } else if (sourceMode == "SourceMode: Current") { _sourceMode = SourceMode.Current; } if (_TimeTraceSingleMeasurement != null) { _TimeTraceSingleMeasurement.Dispose(); } _TimeTraceSingleMeasurement = new TimeTraceSingleMeasurement(newFileName, _sourceMode); #endregion return(true); } else { return(false); } #endregion }
/// <summary> /// Initializes the new I-V curve measurements /// </summary> /// <returns>true, if initialization succeed and false otherwise</returns> private bool InitIV_Measurements() { #region SMU, rendering and save data configurations //Checking the SMU settings if (sourceDeviceConfiguration != null) { #region Chart rendering settings //Initializing a new plot on I-V chart if (_IV_LineGraph != null) { //Detaching receive event from "old" data source _experimentalIV_DataSource.DetachPointReceiveEvent(); _IV_LineGraph.Remove(); } //Creating new plot and attaching it to the chart _CurrentIV_Curve = new List <PointD>(); _experimentalIV_DataSource = new ExperimentalIV_DataSource(_CurrentIV_Curve); _experimentalIV_DataSource.AttachPointReceiveEvent(); _IV_LineGraph = new LineGraph(_experimentalIV_DataSource); _IV_LineGraph.AddToPlotter(chartIV_Curves); #endregion //Getting SMU device Device = sourceDeviceConfiguration.Keithley2602A_DeviceSettings.Device; #region I-V measurement configuration var ExperimentSettings = IV_And_TimeTraceViewModel.Instance; var StartValue = ExperimentSettings.IV_MeasurementStartValue; var EndValue = ExperimentSettings.IV_MeasurementEndValue; var Step = ExperimentSettings.IV_MeasurementStep; var NumberOfAverages = ExperimentSettings.IV_MeasurementNumberOfAverages; var TimeDelay = ExperimentSettings.IV_MeasurementTimeDelay; SourceMode DeviceSourceMode = SourceMode.Voltage; if (this.radioIVSourceVoltage.IsChecked == true) { DeviceSourceMode = SourceMode.Voltage; } else if (this.radioIVSourceCurrent.IsChecked == true) { DeviceSourceMode = SourceMode.Current; } IV_Curve = new MeasureIV(StartValue, EndValue, Step, NumberOfAverages, TimeDelay, DeviceSourceMode, Device); #endregion #region Saving I-V data into files var _IV_FileNumber = String.Format("_{0}{1}{2}", (_IV_FilesCounter / 100) % 10, (_IV_FilesCounter / 10) % 10, _IV_FilesCounter % 10); string newFileName = string.Empty; if (!string.IsNullOrEmpty(_SaveIV_MeasuremrentFileName)) { _IV_MeasurementLog = new IV_MeasurementLog((new FileInfo(_SaveIV_MeasuremrentFileName)).DirectoryName + "\\IV_MeasurementLog.dat"); newFileName = _SaveIV_MeasuremrentFileName.Insert(_SaveIV_MeasuremrentFileName.LastIndexOf('.'), _IV_FileNumber); ++_IV_FilesCounter; } if (!string.IsNullOrEmpty(_SaveIV_MeasuremrentFileName)) { string fileName = (new FileInfo(newFileName)).Name; string sourceMode = string.Empty; if (this.radioIVSourceVoltage.IsChecked == true) { sourceMode = "Source mode: Voltage"; } else if (this.radioIVSourceCurrent.IsChecked == true) { sourceMode = "SourceMode: Current"; } double micrometricBoltPosition = double.NaN; double.TryParse(this.textBoxIV_MicrometricBoltPosition.Text, numberStyle, culture, out micrometricBoltPosition); string comment = this.textBoxIV_Comment.Text; _IV_MeasurementLog.AddNewIV_MeasurementLog(fileName, sourceMode, micrometricBoltPosition, comment); } if (_IV_SingleMeasurement != null) { _IV_SingleMeasurement.Dispose(); } _IV_SingleMeasurement = new IV_SingleMeasurement(newFileName); #endregion return(true); } else { MessageBox.Show("The device is not initialized.", "Error!", MessageBoxButton.OK, MessageBoxImage.Error); return(false); } #endregion }
public void SetCompliance(SourceMode sourceMode, double compliance) { switch (sourceMode) { case SourceMode.Voltage: { var _compliance = compliance; if (compliance < _minCurrentCompliance) _compliance = _minCurrentCompliance; else if (compliance > _maxCurrentCompliance) _compliance = _maxCurrentCompliance; if (_compliance != _currentCurrentCompliance) { _currentCurrentCompliance = _compliance; _driver.SendCommandRequest(string.Format(":SENS:CURR:PROT {0}", _compliance.ToString(NumberFormatInfo.InvariantInfo))); } } break; case SourceMode.Current: { var _compliance = compliance; if (compliance < _minVoltageCompliance) _compliance = _minVoltageCompliance; else if (compliance > _maxVoltageCompliance) _compliance = _maxVoltageCompliance; if (_compliance != _currentVoltageCompliance) { _currentVoltageCompliance = _compliance; _driver.SendCommandRequest(string.Format(":SENS:VOLT:PROT {0}", _compliance.ToString(NumberFormatInfo.InvariantInfo))); } } break; default: break; } }
public void SetCompliance(SourceMode sourceMode, double compliance) { switch (sourceMode) { case SourceMode.Voltage: { if (compliance != _currentCurrentCompliance) { _currentCurrentCompliance = compliance; _driver.SendCommandRequest(string.Format(":SENS:CURR:PROT {0}", compliance.ToString(NumberFormatInfo.InvariantInfo))); } } break; case SourceMode.Current: { var query = (from limit in _VSourceProtectionLimits where limit - Math.Abs(compliance) >= 0.0 select new { limit, distance = limit - Math.Abs(compliance) }).OrderBy(p => p.distance).First().limit; if (query != _currentVoltageCompliance) { _currentVoltageCompliance = query; _driver.SendCommandRequest(string.Format(":SENS:VOLT:PROT {0}", query.ToString(NumberFormatInfo.InvariantInfo))); } } break; default: break; } }
void OnProcessRockClick() { mCurMode = SourceMode.Rock; StartCoroutine(DoSourceSelect()); }
public static extern Result UpdateSourceMode( IntPtr ctx, int sourceId, SourceMode mode);
/// <summary> /// Initializes a new instance of the <see cref="SourceChangedEventArgs"/> class. /// </summary> /// <param name="sourceMode"> /// The source mode. /// </param> /// <param name="oldSource"> /// The old source. /// </param> /// <param name="newSource"> /// The new source. /// </param> public SourceChangedEventArgs(SourceMode sourceMode, object oldSource, object newSource) { this.SourceMode = sourceMode; this.OldSource = oldSource; this.NewSource = newSource; }
private void _SetSourceRange(double val, SourceMode mode) { switch (mode) { case SourceMode.Voltage: { var query = (from range in _VoltageRanges where range - Math.Abs(val) > 0.0 select new { range = range, distance = range - Math.Abs(val) }).OrderBy(p => p.distance).First().range; if (query != _currentSourceVoltageRange) { _currentSourceVoltageRange = query; _driver.SendCommandRequest(string.Format(":SOUR:VOLT:RANG {0}", query.ToString(NumberFormatInfo.InvariantInfo))); } } break; case SourceMode.Current: { var query = (from range in _CurrentRanges where range - Math.Abs(val) > 0.0 select new { range = range, distance = range - Math.Abs(val) }).OrderBy(p => p.distance).First().range; if (query != _currentSourceCurrentRange) { _currentSourceCurrentRange = query; _driver.SendCommandRequest(string.Format(":SOUR:CURR:RANG {0}", query.ToString(NumberFormatInfo.InvariantInfo))); } } break; default: break; } }
void OnProcessOrganicClick() { mCurMode = SourceMode.Organic; StartCoroutine(DoSourceSelect()); }
private void _SetSourceLevel(double val, SourceMode mode) { switch (mode) { case SourceMode.Voltage: _driver.SendCommandRequest(string.Format(":SOUR:VOLT:LEV {0}", val.ToString(NumberFormatInfo.InvariantInfo))); break; case SourceMode.Current: _driver.SendCommandRequest(string.Format(":SOUR:CURR:LEV {0}", val.ToString(NumberFormatInfo.InvariantInfo))); break; default: break; } }
/// <summary> /// Set the <see cref="SourceMode"/> to bind target. /// </summary> /// <param name="sourceMode"> /// The source mode. /// </param> /// <returns> /// The <see cref="WeakBinding"/>. /// </returns> public WeakBinding SetTargetBindMode(SourceMode sourceMode) { this.BindTarget.SourceMode = sourceMode; return(this); }
private void _SetSourceMode(SourceMode mode) { if (mode != _currentSourceMode) { switch (mode) { case SourceMode.Voltage: { _currentSourceMode = mode; _driver.SendCommandRequest(":SOUR:FUNC:MODE VOLT"); } break; case SourceMode.Current: { _currentSourceMode = mode; _driver.SendCommandRequest(":SOUR:FUNC:MODE CURR"); } break; default: break; } } }