Beispiel #1
0
        private unsafe void PushIQData(Complex *samples, int count)
        {
            ComplexSamplesEventArgs e = new ComplexSamplesEventArgs
            {
                Buffer         = samples,
                Length         = count,
                DroppedSamples = (uint)((int)this._droppedBuffers * count)
            };

            this._droppedBuffers = 0u;
            if (this._autoGainDecibels != 0)
            {
                float b = (float)Math.Pow(10.0, (double)((float)(double)this._autoGainDecibels * -0.05f));
                for (int i = 0; i < count; i++)
                {
                    Complex *intPtr  = samples + i;
                    *        intPtr *= b;
                }
            }
            SamplesAvailableDelegate <ComplexSamplesEventArgs> samplesAvailable = this.SamplesAvailable;

            if (samplesAvailable != null)
            {
                samplesAvailable(this, e);
            }
        }
Beispiel #2
0
        protected unsafe virtual void OnComplexSamplesAvailable(Complex *buffer, int length, ulong droppedSamples)
        {
            SamplesAvailableDelegate <ComplexSamplesEventArgs> samplesAvailable = this.SamplesAvailable;

            if (samplesAvailable != null)
            {
                ComplexSamplesEventArgs complexSamplesEventArgs = new ComplexSamplesEventArgs();
                complexSamplesEventArgs.Buffer         = buffer;
                complexSamplesEventArgs.Length         = length;
                complexSamplesEventArgs.DroppedSamples = droppedSamples;
                samplesAvailable(this, complexSamplesEventArgs);
            }
        }
Beispiel #3
0
 private unsafe void Device_SamplesAvailable(object sender, ComplexSamplesEventArgs e)
 {
     this._callback(this, e.Buffer, e.Length);
 }