public void TestShift() { var signal = new Signal { Start = 3, Finish = 10 }; WaveMath.Shift(ref signal, -2.1); Assert.AreEqual(0.9d, signal.Start); Assert.AreEqual(7.9d, signal.Finish); }
/// <summary> /// Executes the block /// </summary> public override void Execute() { var inputNode = InputNodes[0].ConnectingNode as BlockOutputNode; if (inputNode == null || inputNode.Object == null) { return; } OutputNodes[0].Object.Clear(); foreach (var signal in inputNode.Object) { var output = signal.Clone(); WaveMath.Shift(ref output, Delay); OutputNodes[0].Object.Add(output); } if (Cascade && OutputNodes[0].ConnectingNode != null) { OutputNodes[0].ConnectingNode.Root.Execute(); } }