예제 #1
0
 void _notify_Sample(object sender, SampleEventArgs e)
 {
     if (SampleReceived != null)
     {
         SampleReceived.Invoke(this, e);
     }
 }
예제 #2
0
        /// <summary>
        /// This callback is called everytime a sample is player. This method handles current time and current position updates,
        /// the stop of the playing at the end of the track and the buffering state.
        /// </summary>
        /// <param name="sender">Unused params</param>
        /// <param name="e">Unused params</param>
        private void wc_Sample(object sender, SampleEventArgs e)
        {
            if (wc == null)
            {
                return;
            }
            if (wc.CurrentTime.TotalSeconds != currentTime)
            {
                currentTime = wc.CurrentTime.TotalSeconds;
                NotifyPropertyChanged("CurrentTime");
                NotifyPropertyChanged("BufferPortion");
                pos = lmem.Position;
                NotifyPropertyChanged("Position");
            }
            if (lmem.Position == lmem.Length)
            {
                this.stop(); return;
            }
            long myBufferSize = 20480;

            if ((!BufferingState) && (localstream.Position != rsc.Tag.FileSize) && ((localstream.Position - lmem.Position) < myBufferSize))
            {
                Console.WriteLine("Paused ... waiting!");
                BufferingState = true;
                this.pause();
                localstream.WaitForMore();
            }
        }
예제 #3
0
 void inputStream_Sample(object sender, SampleEventArgs e)
 {
     if (OnSample != null)
     {
         OnSample(this, e);
     }
 }
예제 #4
0
 private void SampleCoordinator_SampleSelected(object sender, SampleEventArgs e)
 {
     if (e.Sample.PageType == typeof(RootPage))
     {
         IsPresented = true;
     }
 }
예제 #5
0
 private void Component_AfterLoadDataEventHandler(object sender, SampleEventArgs e)
 {
     if (AfterLoadComponentDataEventHandler != null)
     {
         AfterLoadComponentDataEventHandler(sender, e);
     }
 }
예제 #6
0
 static void Main(string[] args)
 {
     Class1 target = new Class1();
     target.sampleEvent += new SampleEventHandler(target.handler);
     SampleEventArgs sampleEventArgs = new SampleEventArgs();
     sampleEventArgs.message = "in main method";
     target.sampleEvent(target , sampleEventArgs);
 }
예제 #7
0
 void inputStream_Sample(object sender, SampleEventArgs e)
 {
     sampleAggregator.Add(e.Left, e.Right);
     if (repeatEnd != -1 && ActiveStream.Position >= repeatEnd)
     {
         sampleAggregator.Clear();
         ActiveStream.Position = repeatStart;
     }
 }
예제 #8
0
        void OnSamples(object sender, SampleEventArgs e)
        {
            var Samples = Processor.MusicNotation.Samples;

            if (Samples.Count != 0)
            {
                waveVisualizerManager1.OnSample(Samples[Samples.Count - 1]);
            }
        }
        private void ForwardStreamSample(object sender, SampleEventArgs e)
        {
            long num  = (long)((this.SelectionBegin.TotalSeconds / this.ActiveStream.TotalTime.TotalSeconds) * this.ActiveStream.Length);
            long num2 = (long)((this.SelectionEnd.TotalSeconds / this.ActiveStream.TotalTime.TotalSeconds) * this.ActiveStream.Length);

            if (((this.SelectionEnd - this.SelectionBegin) >= TimeSpan.FromMilliseconds(200.0)) && (this.ActiveStream.Position >= num2))
            {
                ActiveStream.Position = num;
            }
        }
예제 #10
0
        public void RaiseTestCase1()
        {
            var helperClass = new HelperClass();
            var eventArgs = new SampleEventArgs( RandomValueEx.GetRandomString() );
            helperClass.RaiseGenericEvent( eventArgs );

            SampleEventArgs actual = null;
            helperClass.MyGenericEvent += ( sender, e ) => actual = e;
            helperClass.RaiseGenericEvent( eventArgs );
            Assert.AreSame( eventArgs, actual );
        }
예제 #11
0
 public void LoadData()
 {
     if (LoadDataEventHandler != null)
     {
         var eventArgs = new SampleEventArgs()
         {
             Data = this.Data
         };
         LoadDataEventHandler(this, eventArgs);
         this.Data = eventArgs.Data;
     }
 }
예제 #12
0
        private void inputStream_Sample(object sender, SampleEventArgs e)
        {
            visualizer.Add(e.Left, e.Right);
            long repeatStartPosition = (long)((SelectionBegin.TotalSeconds / this.activeStream.TotalTime.TotalSeconds) * this.activeStream.Length);
            long repeatStopPosition  = (long)((SelectionEnd.TotalSeconds / this.activeStream.TotalTime.TotalSeconds) * this.activeStream.Length);

            if (((SelectionEnd - SelectionBegin) >= TimeSpan.FromMilliseconds(200)) && this.activeStream.Position >= repeatStopPosition) // 200 = repeatthreshhold
            {
                visualizer.Clear();
                this.activeStream.Position = repeatStartPosition;
            }
        }
 private void OnNewSample(object sender, SampleEventArgs e)
 {
     Sample sample = e.Sample;
     m_StreamWriter.WriteLine(
         "{0}\t{1}::{2}\t{3}\t{4}\t{5}",
         sample.TimeSlotIndex,
         sample.TimeStamp.ToString("HH:mm:ss", CultureInfo.InvariantCulture),
         sample.TimeStamp.Millisecond.ToString("000"),
         sample.SkinConductivity,
         sample.Heart,
         String.Empty);
 }
예제 #14
0
        private void inputStream_Sample(object sender, SampleEventArgs e)
        {
            sampleAggregator.Add(e.Left, e.Right);
            var repeatStartPosition = (long)(SelectionBegin.TotalSeconds / ActiveStream.TotalTime.TotalSeconds * ActiveStream.Length);
            var repeatStopPosition  = (long)(SelectionEnd.TotalSeconds / ActiveStream.TotalTime.TotalSeconds * ActiveStream.Length);

            if ((SelectionEnd - SelectionBegin >= TimeSpan.FromMilliseconds(repeatThreshold)) && (ActiveStream.Position >= repeatStopPosition))
            {
                sampleAggregator.Clear();
                ActiveStream.Position = repeatStartPosition;
            }
        }
예제 #15
0
        public void RaiseTest1()
        {
            var helperClass = new HelperClass();
            var eventArgs   = new SampleEventArgs();

            helperClass.RaiseGenericEvent(eventArgs);

            SampleEventArgs actual = null;

            helperClass.MyGenericEvent += (sender, e) => actual = e;
            helperClass.RaiseGenericEvent(eventArgs);
            Assert.Same(eventArgs, actual);
        }
예제 #16
0
 public void AfterLoadData()
 {
     if (AfterLoadDataEventHandler != null)
     {
         var eventArgs = new SampleEventArgs()
         {
             Data = this.Data
         };
         AfterLoadDataEventHandler(this, eventArgs);
         if (Data != eventArgs.Data)
         {
             Data = eventArgs.Data;
         }
     }
 }
 private async void AccountOnSampleEvent(object sender, SampleEventArgs e)
 {
     try
     {
         _logControl.LogMessage($"Sending {e} to requester={_sampleEventKey}");
         var args = e.ToSampleEventArgsMessage();
         await _responseStream.WriteAsync(args);
     }
     catch (Exception ex)
     {
         // Eo graceful recovery when client has disappeared
         _logControl.LogMessage($"Exception: {ex.Message}");
         _removeAction(_sampleEventKey);
         Dispose();
     }
 }
예제 #18
0
        public void onVolChanged(object sender, SampleEventArgs e)
        {
            currentsp++;
            float avs = (e.Left + e.Right) / 2f;

            if (Math.Abs(avs) > curmax)
            {
                curmax = Math.Abs(avs);
            }

            if (currentsp > maxsps)
            {
                onVol(curmax);
                currentsp = 0;
                curmax    = 0f;
            }
        }
예제 #19
0
        private void OnSample(object sender, SampleEventArgs e)
        {
            FFTBuffer[FFTPosition].X = (float)(e.Right * FastFourierTransform.HammingWindow(FFTPosition, FFTLength)); // e.Right ? seems equal to e.Left in this case (mono?)
            FFTBuffer[FFTPosition].Y = 0;
            FFTPosition++;
            if (FFTPosition >= FFTBuffer.Length)
            {
                FastFourierTransform.FFT(true, (int)Math.Log(FFTLength, 2.0), FFTBuffer);
                FFTPosition = 0;

                SampleAnalysis[] result = new SampleAnalysis[FFTLength];

                for (int n = 0; n < FFTBuffer.Length; n++)
                {
                    result[n].Frequency = Physics.GetFrequency(n, AudioReader.WaveFormat.SampleRate, FFTLength);
                    result[n].Amplitude = Physics.GetAmplitude(FFTBuffer[n]);
                }

                Processed?.Invoke(result);
            }
        }
예제 #20
0
        //-DrawAudio: takes the waveform and draws it
        private void DrawAudioWave(object sender, SampleEventArgs e)
        {
            lock (sampleObject)
            {
                if (count >= Speed)
                {
                    wave.addAudio(leftMax, rightMax);

                    leftMax  = 0;
                    rightMax = 0;
                    count    = 0;
                }
                else
                {
                    if (Math.Abs(e.Left) + Math.Abs(e.Right) > Math.Abs(leftMax) + Math.Abs(rightMax))
                    {
                        leftMax  = e.Left;
                        rightMax = e.Right;
                    }

                    count++;
                }
            }
        }
예제 #21
0
 private void inputStream_Sample(object sender, SampleEventArgs e)
 {
     _aggregator.Add(e.Left, e.Right);
 }
예제 #22
0
 private void SampleEventHandler(object sender, SampleEventArgs args)
 {
     throw new NotImplementedException();
 }
예제 #23
0
 void waveStream_Sample(object sender, SampleEventArgs e)
 {
     waveformAggregator.Add(e.Left, e.Right);
 }
예제 #24
0
 private void OnSample(object sender, SampleEventArgs e)
 {
     AddSample(e.Left);
 }
예제 #25
0
 private void SampleEvent(object sender, SampleEventArgs e)
 {
     nextval = Math.Abs(e.Left + e.Right / 2);
 }
예제 #26
0
 static void _waveChannel_Sample(object sender, SampleEventArgs e)
 {
     InputSampler.Add(e.Left, e.Right);
 }
예제 #27
0
 // ReSharper disable once ReturnValueOfPureMethodIsNotUsed
 public void RaiseGenericEvent(SampleEventArgs args) => MyGenericEvent.Raise(this, args);
예제 #28
0
 private void waveStream_Sample(object sender, SampleEventArgs e)
 {
     waveFormVisualizer.Add(e.Left, e.Right);
 }
예제 #29
0
 private void ModelCompleted(object sender, SampleEventArgs e)
 {
     this.form1.Update(e.Data);
 }
예제 #30
0
 public void RaiseGenericEvent( SampleEventArgs args )
 {
     MyGenericEvent.Raise( this, args );
 }
예제 #31
0
        // This will be called whenever the list changes.
        private void ServerEvent(object sender, SampleEventArgs e)
        {
            Console.WriteLine("-> ServerEvent incoming Message");

            // Verify the message contents are trustworthy.

            try
            {
                ByteBuffer byteBuffer = new ByteBuffer(e.Data);

                var message = NetMsg.MessageRoot.GetRootAsMessageRoot(byteBuffer); // read

                Console.WriteLine("-> ServerEvent incoming Message.DataType:" + message.DataType);

                switch (message.DataType)
                {
                case NetMsg.Data.ReturnStatus:

                    NetMsg.ReturnStatus status = new NetMsg.ReturnStatus();
                    status = message.GetData <NetMsg.ReturnStatus>(status);

                    switch (status.Status)
                    {
                    case NetMsg.MsgStatus.S_LoginSuccess:
                        _SocketServerManager.Client.HostInfo.isLoggedIn = true;
                        break;
                    }

                    break;

                case NetMsg.Data.Chatmessage:
                    NetMsg.Chatmessage msg = new NetMsg.Chatmessage();
                    msg = message.GetData <NetMsg.Chatmessage>(msg);

                    Console.WriteLine("NetMsg.Data.Chatmessage:" + msg.Text);

                    break;

                case NetMsg.Data.Scene:
                    XFBType.Scene scene = new XFBType.Scene();
                    scene = message.GetData <XFBType.Scene>(scene);

                    Console.WriteLine("NetMsg.Data.Scene:" + scene.Sceneid);

                    break;

                case NetMsg.Data.Entity:

                    Entity ent = new Entity();
                    ent = message.GetData <Entity>(ent);


                    Application.Current.Dispatcher.BeginInvoke(
                        DispatcherPriority.Normal,
                        new Action(() =>
                    {
                        var model = this.DataContext as SocketServerToolModel;

                        var entityExists = model.SceneItems.Where(x => x.Entity.EntityID == ent.EntityID);
                        if (entityExists.Any())
                        {
                            var existingEntity = entityExists.First();

                            for (int i = 0; i < ent.ComponentsLength; i++)
                            {
                                var comp = ent.GetComponents(i);

                                Console.WriteLine("NetMsg.Data.Entity -> ComponentType:" + comp.CompType);

                                if (comp.CompType == UComponent.BodyComponent)
                                {
                                    XFBType.BodyComponent fbBody = new XFBType.BodyComponent();
                                    comp.GetComp(fbBody);

                                    var body = existingEntity.Entity.GetComponentX <BodyComponent>() as BodyComponent;
                                    body.FB_BodyComponent.Location = new Interface.Scene.Services.Vector3()
                                    {
                                        X = fbBody.Position.X, Y = fbBody.Position.Y, Z = fbBody.Position.Z
                                    };
                                    body.FB_BodyComponent.Rotation = new Interface.Scene.Services.Quaternion()
                                    {
                                        W = fbBody.Rotation.W, X = fbBody.Rotation.X, Y = fbBody.Rotation.Y, Z = fbBody.Rotation.Z
                                    };
                                    body.FB_BodyComponent.Scale = new Interface.Scene.Services.Vector3()
                                    {
                                        X = fbBody.Scale.X, Y = fbBody.Scale.Y, Z = fbBody.Scale.Z
                                    };
                                }
                            }
                        }
                        else               // new entity

                        {
                            var newEntity = new EntityX()
                            {
                                EntityID = ent.EntityID,
                                NetID    = message.Netid,
                                SceneID  = message.Scene
                            };

                            for (int i = 0; i < ent.ComponentsLength; i++)
                            {
                                var comp = ent.GetComponents(i);

                                Console.WriteLine("NetMsg.Data.Entity -> ComponentType:" + comp.CompType);

                                if (comp.CompType == UComponent.BodyComponent)
                                {
                                    XFBType.BodyComponent fbBody = new XFBType.BodyComponent();
                                    comp.GetComp(fbBody);

                                    var body = new BodyComponent()
                                    {
                                        Parent = newEntity
                                    };
                                    body.FB_BodyComponent.Location = new Interface.Scene.Services.Vector3()
                                    {
                                        X = fbBody.Position.X, Y = fbBody.Position.Y, Z = fbBody.Position.Z
                                    };
                                    body.FB_BodyComponent.Rotation = new Interface.Scene.Services.Quaternion()
                                    {
                                        W = fbBody.Rotation.W, X = fbBody.Rotation.X, Y = fbBody.Rotation.Y, Z = fbBody.Rotation.Z
                                    };
                                    body.FB_BodyComponent.Scale = new Interface.Scene.Services.Vector3()
                                    {
                                        X = fbBody.Scale.X, Y = fbBody.Scale.Y, Z = fbBody.Scale.Z
                                    };
                                    newEntity.Components.Add(body);
                                }
                            }

                            model.SceneItems.Add(new SourceItem()
                            {
                                Entity = newEntity
                            });
                        }
                    }));

                    break;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(e.Data);
            }
        }
예제 #32
0
 private void SampleRead(object sender, SampleEventArgs e)
 {
     sampleAggregator.Add(e.Left, e.Right);
 }
예제 #33
0
 public static void publisher_SampleEvent(object sender, SampleEventArgs e)
 {
     Console.WriteLine("e.Text:" + e.Text);
 }
예제 #34
0
 void OnSample(object sender, SampleEventArgs e)
 {
     aggregator.Add(e.Left);
 }
예제 #35
0
 public void handler(object o , SampleEventArgs e)
 {
     Console.WriteLine(e.message);
 }