public override void Execute(EventDescription token) { if (this.LastEvent != token) { OutputNodes[0].Object = AppGlobals.PyExecuteExpr(Code); } }
public static object Parse(string expr, string hint) { try { object result = AppGlobals.PyExecuteExpr(expr); return(result); } catch (Exception ex) { string msg = "Error while evaluating `" + hint + "` (" + ex.Message + ")"; Exception tmp = (Exception)Activator.CreateInstance(ex.GetType(), msg); throw tmp; } }
public override void Execute(Blocks.EventDescription e) { if (InputNodes[0].ConnectingNode != null) { var obj = InputNodes[0].Object; if (Utils.IsArrayOf <OpenSignalLib.ComplexTypes.Complex>(obj)) { OpenSignalLib.ComplexTypes.Complex[] fft = (OpenSignalLib.ComplexTypes.Complex[])obj; var vals = OpenSignalLib.Transforms.Fourier.iFFT(fft, int.Parse(AppGlobals.PyExecuteExpr(N).ToString())); OutputNodes[0].Object = Utils.GetAbsolute(vals); } } }
public override void Execute(Blocks.EventDescription e) { if (InputNodes[0].ConnectingNode != null) { double[] x, y; var obj = InputNodes[0].Object; if (Utils.IsSignal(obj)) { OpenSignalLib.Sources.Signal s = Utils.AsSignal(obj); Logger.D(s.SamplingRate.ToString()); int n = int.Parse(AppGlobals.PyExecuteExpr(N).ToString()); var spectrum = OpenSignalLib.Transforms.Fourier.fspectrum(s, n); x = spectrum.Keys.ToArray(); y = spectrum.Values.ToArray(); } else { throw new Exception("invalid input type : " + obj.GetType().Name); } if (!Hold || (plotControl.Window == null || plotControl.Window.IsDisposed)) { _createPlot(x, y); } if (Hold) { plotControl.Curve.Clear(); for (int i = 0; i < x.Length; i++) { if (Scale == Scales.dB_Scale) { plotControl.Curve.AddPoint(x[i], 10 * Math.Log10(y[i])); } else { plotControl.Curve.AddPoint(x[i], y[i]); } } plotControl.Control.AxisChange(); plotControl.Control.Invalidate(); } } }
public override void Execute(Blocks.EventDescription e) { if (InputNodes[0].ConnectingNode != null) { double[] values = new double[0]; if (Utils.IsSignal(InputNodes[0].Object)) { values = Utils.AsSignal(InputNodes[0].Object).Samples; } var vals = OpenSignalLib.Transforms.Fourier.FFT(values, int.Parse(AppGlobals.PyExecuteExpr(N).ToString())); if (OutputAbsoluteValues) { double[] vec = Utils.GetAbsolute(vals); OutputNodes[0].Object = vec; } else { OutputNodes[0].Object = vals; } } }
public override void Execute(Blocks.EventDescription e) { OutputNodes[0].Object = AppGlobals.PyExecuteExpr(Value); }