public void Toggle() { CrestronConsole.PrintLine("Toggle is called"); var _ison = this.IsOn(); currentState = loadState.Toggle; expectedMessageCount = 2; if (!_ison) { FullOn(); } else if (_ison) { Off(); } var hub = MessageHub.Instance; LoadToggleOnEvent message = new LoadToggleOnEvent(this); message.IsOn = !_ison; hub.Publish <LoadToggleOnEvent>(message); }
public void Off() { // level = 0; _crestronLoad.FullOff(); _level = 0; var hub = MessageHub.Instance; LoadToggleOnEvent message = new LoadToggleOnEvent(this); message.IsOn = false; hub.Publish <LoadToggleOnEvent>(message); }
public void FullOn() { //Set Level 100 // level = 100; _crestronLoad.FullOn(); _level = 65535; var hub = MessageHub.Instance; LoadToggleOnEvent message = new LoadToggleOnEvent(this); message.IsOn = true; hub.Publish <LoadToggleOnEvent>(message); }
public void SetLevel(ushort level) { if (_crestronLoad.Type == eLoadType.Switch) { if (level > 0) { FullOn(); } else { Off(); } } else if (_crestronLoad.Type == eLoadType.Dimmer) { ((DimmingLoad)_crestronLoad).Level.UShortValue = level; _level = level; var hub = MessageHub.Instance; LoadToggleOnEvent message = new LoadToggleOnEvent(this); if (level != 0) { message.IsOn = true; } else { message.IsOn = false; } message.stopwatch.Start(); hub.Publish <LoadToggleOnEvent>(message); //Testing with multiple loads going on LoadLevelEvent lmessage = new LoadLevelEvent(this); lmessage.Level = level; hub.Publish <LoadLevelEvent>(lmessage); } return; }