public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge) { var joinMap = new IDigitalInputJoinMap(joinStart); var joinMapSerialized = JoinMapHelper.GetSerializedJoinMapForDevice(joinMapKey); if (!string.IsNullOrEmpty(joinMapSerialized)) { joinMap = JsonConvert.DeserializeObject <IDigitalInputJoinMap>(joinMapSerialized); } bridge.AddJoinMap(Key, joinMap); try { Debug.Console(1, this, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); // Link feedback for input state InputStateFeedback.LinkInputSig(trilist.BooleanInput[joinMap.InputState.JoinNumber]); } catch (Exception e) { Debug.Console(1, this, "Unable to link device '{0}'. Input is null", Key); Debug.Console(1, this, "Error: {0}", e); } }
void InputPort_VersiportChange(Versiport port, VersiportEventArgs args) { Debug.Console(1, this, "Versiport change: {0}", args.Event); if (args.Event == eVersiportEvent.DigitalInChange) { InputStateFeedback.FireUpdate(); } }
void InputPort_StateChange(DigitalInput digitalInput, DigitalInputEventArgs args) { InputStateFeedback.FireUpdate(); }