예제 #1
0
 void update(Client player, EUpdate co)
 {
     switch (co)
     {
     case EUpdate.PUBLIC_VEHICLES:
         //Globals.Systems.publicVehicles.Update();
         break;
     }
 }
예제 #2
0
 private void _PulseOffTimer_Elapsed(object sender, ElapsedEventArgs e)
 {
     _UpdateEventArgs.Value = TurnDevice.ON;
     SignalCounter++;
     _UpdateEventArgs.ActualCountSingleONSignals = SignalCounter;
     EUpdate?.Invoke(this, _UpdateEventArgs);
     _PulseOffTimer.Stop( );
     _PulseOnTimer.Start( );
 }
예제 #3
0
 void TurnSingleDevice(int index, bool value)
 {
     if ((index < CommanderConfiguration.NumberOfOutputs) && (index >= 0))
     {
         _UpdateEventArgs.Index = index;
         _UpdateEventArgs.Value = value;
         _UpdateEventArgs.State = SequencerState.Running;
         EUpdate?.Invoke(this, _UpdateEventArgs);
     }
 }
예제 #4
0
 private void _NextSequenceTimer_Elapsed(object sender, ElapsedEventArgs e)
 {
     _NextSequenceTimer.Stop( );
     _PulseOnTimer.Start( );
     _UpdateEventArgs.Value = TurnDevice.ON;
     _UpdateEventArgs.State = SequencerState.Running;
     _UpdateEventArgs.ActualCountSequences = ++SequenceCounter;
     SignalCounter = StartValueSignalCount;
     SignalCounter++;
     _UpdateEventArgs.ActualCountSingleONSignals = SignalCounter;
     EUpdate?.Invoke(this, _UpdateEventArgs);
 }
예제 #5
0
        private void _PulseOnTimer_Elapsed(object sender, ElapsedEventArgs e)
        {
            _PulseOnTimer.Stop( );
            _UpdateEventArgs.Value = TurnDevice.OFF;

            if ((_UpdateEventArgs.ActualCountSingleONSignals < _config.CountSequenceSignals) || (_config.CountSequenceSignals == 0))
            {
                _PulseOffTimer.Start( );
            }
            else if (_UpdateEventArgs.ActualCountSingleONSignals >= _config.CountSequenceSignals)
            {
                _PulseOffTimer.Stop( );
                switch (_config.SequencerMode)
                {
                case SequencerModi.MultipleCount:
                    SignalCounter = StartValueSignalCount;
                    if ((_UpdateEventArgs.ActualCountSequences < _config.CountSequencePeriodes) || (_config.CountSequencePeriodes == 0))
                    {
                        _UpdateEventArgs.State = SequencerState.WaitForNextSequence;
                        _NextSequenceTimer.Start( );
                    }
                    else
                    {
                        _UpdateEventArgs.ActualCountSequences = StartValueSequenceCount;
                        _NextSequenceTimer.Stop( );
                        _UpdateEventArgs.State = SequencerState.Finished;
                    }
                    break;

                case SequencerModi.Single:
                    SignalCounter          = StartValueSignalCount;
                    _UpdateEventArgs.State = SequencerState.Finished;
                    break;
                }
            }
            EUpdate?.Invoke(this, _UpdateEventArgs);
        }
예제 #6
0
 void Update_()
 {
     EUpdate?.Invoke(this, _UpdateEventArgs);
 }
예제 #7
0
 void Update()
 {
     EUpdate?.Invoke();
 }