private void Timer_Elapsed(object sender, ElapsedEventArgs e) { if (State == LampState.On) { State = LampState.Off; } }
protected LampDeviceBase(LampState state, DeviceCreationInfo creationInfo) : base(state, creationInfo) { ForceSwitching = false; mVoiceName = creationInfo.Configuration.voiceName; }
public TrafficLightControllerState(LampState roadAState, LampState roadBState, LampState pedestrianTrafficLightState, int timeWait) { this.RoadAState = roadAState; this.RoadBState = roadBState; this.PedestrianTrafficLightState = pedestrianTrafficLightState; TimeWait = timeWait; }
public void Up() { if (State == LampState.On) { State = LampState.Off; } }
public override void ApplyState(DeviceBase.DeviceState state) { base.ApplyState(state); LampState currentState = (LampState)mState; LampState newState = (LampState)state; // Make sure we don't try to change these values. newState.Dimmable = currentState.Dimmable; newState.Group = currentState.Group; // Prioritize level changes which would indirectly affect Value changes. if (currentState.Dimmable && Math.Abs(newState.Level - currentState.Level) > 0.001f) { DimDevice(newState.Level); } else if (newState.Value != currentState.Value) { SwitchDevice(newState.Value); } else if (ForceSwitching) { if (newState.Level > 0.0f && newState.Level < 1.0f) { DimDevice(newState.Level); } else { SwitchDevice(newState.Value); } } }
public void Down() { if (State == LampState.Off) { State = LampState.On; } }
public LampState(LampState state) : base(state) { Value = state.Value; Level = state.Level; Dimmable = state.Dimmable; Group = state.Group; }
public LampStateMachineB(LampState initialState = LampState.Off) : base(initialState) { Configure(LampState.Off) .Permit(LampTrigger.Push, LampState.On); Configure(LampState.On) .Permit(LampTrigger.Push, LampState.Off); }
public void SwitchDevice(bool value) { if (OnSwitchDevice(value)) { LampState state = (LampState)mState; state.Value = value; state.Level = value ? 1.0f : 0.0f; } }
public void SetState(LampState lampState) { if (lampState == state) return; Trace.WriteLine("Turning " + name + " light " + lampState); lowLevelDriver.ControlDevice(deviceCode, lampState == LampState.On ? Function.On : Function.Off, 0); state = lampState; }
public void PushDown_CurrentState_ShouldTargetState(LampState currentState, LampState expectedState) { // Arrange ProxyLamp lamp = new ProxyLamp(new LampStateMachine(messageService, initialState: currentState)); // Act lamp.PushDown(); // Assert lamp.State.Should().Be(expectedState); }
public void StateChangedEvent() { var machine = new StateMachine <LampState, LampTrigger>(LampState.Off); machine.Configure(LampState.Off).PermitImmediate(LampState.On); LampState caughtState = LampState.Off; machine.StateChanged += (sender, args) => caughtState = args.NextState; machine.Initialize(); Assert.AreEqual(caughtState, LampState.On); }
public void PowerOff() { if (State == LampState.On) { State = LampState.Off; } else { throw new InvalidOperationException($"state {State}"); } }
public virtual void PushDown() { if (State == LampState.On) { State = LampState.Off; } else if (State == LampState.Red) { State = LampState.Off; } }
public virtual void Push() { if (State == LampState.Off) { State = LampState.On; } else if (State == LampState.On) { State = LampState.Off; } }
public void DimDevice(float level) { // Clamp level field level = Math.Min(Math.Max(level, 0.0f), 1.0f); if (OnDimDevice(level)) { LampState state = (LampState)mState; state.Level = level; state.Value = level > 0.0f; } }
public void SetState(LampState lampState) { if (lampState == state) { return; } Trace.WriteLine("Turning " + name + " light " + lampState); lowLevelDriver.ControlDevice(deviceCode, lampState == LampState.On ? Function.On : Function.Off, 0); state = lampState; }
public void PushUp_LampStateOff_ShouldTargetState(string currentTime, LampState expectedState) { ITimeService timeService = Mock.Of <ITimeService>(ts => ts.TimeOfDay == TimeSpan.Parse(currentTime)); // Arrange ProxyLamp lamp = new ProxyLamp(new LampStateMachine(messageService, timeService)); // Act lamp.PushUp(); // Assert lamp.State.Should().Be(expectedState); }
public static string ToString(LampState ls) { switch (ls) { case LampState.GREEN: return "绿"; case LampState.RED: return "红"; case LampState.OFF: return "灭"; default: return "未知"; } }
public void PowerOn() { if (State == LampState.Off) { State = LampState.On; } else if (State == LampState.On) { State = LampState.Blinking; } else { throw new InvalidOperationException($"state {State}"); } }
private void HandleLightStateChange(LightState newState) { if (newState == LightState.Dark) { if (_lampState == LampState.Off) { _lampState = LampState.On; _lampStateEventSource.Raise(_lampState); } } else if (newState == LightState.Light) { if (_lampState == LampState.On) { _lampState = LampState.Off; _lampStateEventSource.Raise(_lampState); } } }
/// <summary> /// Sets the state of the target lamp /// </summary> /// <param name="lampId">Target device ID</param> /// <param name="newState">Desired lamp state</param> /// <returns>Controller response object</returns> public static ControllerResponse SetState(int lampId, LampState newState) { if (CheckDevice(lampId) == false) { return(new ControllerResponse(StatusCode.DeviceUnreachable)); } _coapClient.UriPath = $"{CommandConstants.UniqueDevices}/{lampId}"; var result = new ControllerResponse(_coapClient.Put("{ \"3311\":[{ \"5850\": " + (int)newState + "}]}")); if (result.StatusCode == StatusCode.Changed) { return((GetDevice(lampId) as Lamp)?.State == newState ? result : new ControllerResponse(StatusCode.NotModified)); } else { return(result); } }
protected override void SetLampState(LampState signal) { Log.Trace("Traffic Light type:{0} Lamp state :{1}", this.TrafficLightType, signal); RedLamp = false; GreenLamp = false; switch (signal) { case LampState.BlinkGreen: BlinkSignalTimer = new Timer(BlinkSignal, LampState.Green, 0, 500); return; case LampState.Green: GreenLamp = true; break; case LampState.Red: RedLamp = true; break; } OnStateChanged(this, EventArgs.Empty); }
public LampImplementation(DeviceClient client, LampState state) { _client = client; _state = state; }
public void SetState(LampState requestedState) { State = requestedState; }
public QuarterlyLampRow(int lampCount, int timeInterval, LampState defaultLampState, LampState quarterLampState) : base(lampCount, timeInterval, defaultLampState) { this.querterLampState = quarterLampState; UpdateTime(); }
private static void Dump(LampState state) { Console.ForegroundColor = colors[(int)state]; Console.WriteLine(state); Console.ResetColor(); }
public LampState(LampState state) : base(state) { Channel = state.Channel; }
protected abstract void SetLampState(LampState signal);
public LampPoco() { State = LampState.Off; }
public IActionResult Index([FromServices] LampState state) { return(Ok(state)); }
public LampObsolete() { State = LampState.Off; }