예제 #1
0
        public void output_timing_greater_than_sample_count()
        {
            var wire = new Wire();

            wire.Add(5);
            wire.Add(0);

            Assert.Equal(0, wire.Output(3));
        }
예제 #2
0
        public void count_input_samples()
        {
            var wire = new Wire();

            wire.Add(5);
            wire.Add(0);
            wire.Add(5);

            Assert.Equal(3, wire.Count);
        }
예제 #3
0
        public void output_normal()
        {
            var wire = new Wire();

            wire.Add(5);

            Assert.Equal(5, wire.Output(0));
        }
예제 #4
0
 private void UpdateInputFeedback(Wire input, int timing, double result)
 {
     if (input.Count <= timing)
     {
         while (input.Count <= timing)
         {
             input.Add(result);
         }
     }
     else
     {
         input.Inputs[0].InputSample[timing].Voltage = result;
     }
 }