public IEnumerable<IControlMessage> GetControllMessagesForEndpointState(IEndpointState state, IHardwareEndpoint hardwareEndpoint) { var hwid = hardwareEndpoint.HardwareEndpointIndentifiers.First ().ID; var message = ControlFactory.GetControlMessage () as NCDControllMessage; if (message != null) { message.Bank = byte.Parse (hwid.Substring (1, hwid.IndexOf (":") - 1)); message.Relay = byte.Parse (hwid.Substring (hwid.IndexOf (":") + 1)); if (state != null) { switch (state.Name) { case "On": message.Status = 1; yield return message; break; case "Off": message.Status = 0; yield return message; break; default: message.Status = 0; yield return message; break; } } } }
public void Trigger(IEndpoint endpoint, IEndpointState state) { throw new System.NotImplementedException(); }
public void Trigger(IEndpoint endpoint, IEndpointState state) { endpoint.CurrentState = state; var actions = Rules.Where(r => r.HasFriend(endpoint)).Select(rule => rule.FireWithInput(endpoint)).ToList(); }
public IEnumerable<IControlMessage> GetControllMessagesForEndpointState(IEndpointState state, IHardwareEndpoint hardwareEndpoint) { yield return ControlFactory.GetControlMessage(); }
public IEnumerable<IControlMessage> GetControllMessagesForEndpointState(IEndpointState state, IHardwareEndpoint hardwareEndpoint) { throw new NotImplementedException(); }