예제 #1
0
        public async Task <ActionResult> Post([FromBody] SEvent sensor)
        {
            Console.WriteLine("From AC " + sensor.Event.Timestamp);
            Sensor st = sensor.Event;
            await _dataRepository.PostData(st);

            return(Ok());
        }
예제 #2
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        SEvent myScript = (SEvent)target;

        if (GUILayout.Button("Raise Event"))
        {
            myScript.Raise();
        }
    }
예제 #3
0
        private void AnnimationWorkerThread(object arg)
        {
            var hostVisual     = (HostVisual)arg;
            var visualTargetPs = new VisualTargetPresentationSource(hostVisual);

            SEvent.Set();

            visualTargetPs.RootVisual = CreateElement();

            System.Windows.Threading.Dispatcher.Run();
        }
예제 #4
0
 //use update, not affect by time scale
 public void setTimer(voidEvent ev, float delay, int repeatNum = 1, bool startNow = false)
 {
     if (startNow)
     {
         ev();
         repeatNum--;
     }
     if (repeatNum > 0)
     {
         SEvent sEv = new SEvent(ev, delay, repeatNum);
         _allTimers.Add(sEv);
     }
 }
예제 #5
0
        private HostVisual CreateAnnimationOnWorkerThread()
        {
            var hostVisual = new HostVisual();

            var thread = new Thread(AnnimationWorkerThread);

            thread.SetApartmentState(ApartmentState.STA);
            thread.IsBackground = true;
            thread.Start(hostVisual);

            SEvent.WaitOne();

            return(hostVisual);
        }
예제 #6
0
 void Update()
 {
     if (_allTimers.Count > 0)
     {
         for (int i = _allTimers.Count - 1; i >= 0; i--)
         {
             SEvent ev = _allTimers[i];
             if (ev.callBack == null)
             {
                 _allTimers.Remove(ev);
             }
             else if (Time.realtimeSinceStartup - ev.beginTime >= ev.delay)
             {
                 ev.repeatNum--;
                 if (ev.callBack != null)
                 {
                     ev.callBack();
                 }
                 if (ev.repeatNum <= 0)
                 {
                     _allTimers.Remove(ev);
                     ev = null;
                 }
                 else
                 {
                     ev.beginTime = Time.realtimeSinceStartup;
                 }
             }
         }
     }
     if (_updateEv != null)
     {
         _updateEv.counter += Time.deltaTime;
         if (_updateEv.callBack != null)
         {
             float p     = _updateEv.counter / _updateEv.tweenTime;
             float delta = _updateEv.begin + _updateEv.total * p;
             _updateEv.callBack(delta);
         }
         if (_updateEv.counter >= _updateEv.tweenTime)
         {
             _updateEv = null;
         }
     }
 }
예제 #7
0
 public Task Handle(SEvent @event)
 {
     Console.WriteLine($"@@event#{@event.GetType().Name}: {this.GetType().Name}");
     return(Task.CompletedTask);
 }