示例#1
0
        public void EnqueueSamples(object sender, EnqueueSamplesEventArgs e)
        {
            if (sampleQueue.Count > 4)
            {
                sampleQueue.Clear();
            }

            sampleQueue.Enqueue(e.Samples);
        }
示例#2
0
        public void EnqueueSamples(object sender, EnqueueSamplesEventArgs e)
        {
            waveformControlCh1.EnqueueSamples(e.ChannelSamples[0]);
            waveformControlCh2.EnqueueSamples(e.ChannelSamples[1]);
            waveformControlCh3.EnqueueSamples(e.ChannelSamples[2]);
            waveformControlCh4.EnqueueSamples(e.ChannelSamples[3]);

            this.CheckInvokeMethod(() =>
            {
                lblChannel1Muted.Text = (e.IsChannelMuted[0] ? "(Muted)" : string.Empty);
                lblChannel2Muted.Text = (e.IsChannelMuted[1] ? "(Muted)" : string.Empty);
                lblChannel3Muted.Text = (e.IsChannelMuted[2] ? "(Muted)" : string.Empty);
                lblChannel4Muted.Text = (e.IsChannelMuted[3] ? "(Muted)" : string.Empty);
            });

            waveformControlChAll.EnqueueSamples(e.MixedSamples);
        }
示例#3
0
        public void EnqueueSamples(object sender, EnqueueSamplesEventArgs e)
        {
            if (sampleQueue.Count > MaxQueueLength)
            {
                var samplesToDrop = (sampleQueue.Count - MaxQueueLength);
                onScreenDisplayHandler.EnqueueMessageDebug($"({GetType().Name}/{DateTime.Now.Second:D2}s) Sample queue overflow; dropping {samplesToDrop} of {sampleQueue.Count} samples.");
                for (int i = 0; i < samplesToDrop; i++)
                {
                    if (sampleQueue.Count != 0)
                    {
                        sampleQueue.Dequeue();
                    }
                }
            }

            sampleQueue.Enqueue(e.MixedSamples.ToArray());

            if (IsRecording)
            {
                dataChunk.AddSampleData(e.MixedSamples);
                waveHeader.FileLength += (uint)e.MixedSamples.Length;
            }
        }
示例#4
0
文件: SN76489.cs 项目: Noah670/Essgee
 public virtual void OnEnqueueSamples(EnqueueSamplesEventArgs e)
 {
     EnqueueSamples?.Invoke(this, e);
 }