Skip to content

Commit

Permalink
Merge pull request #2 from PepperDash-Engineering/development
Browse files Browse the repository at this point in the history
fix: updated StatusGet to only poll input and lamp when device power …
  • Loading branch information
jkdevito authored Oct 13, 2022
2 parents 1bd379d + c87a325 commit fa7144b
Showing 1 changed file with 30 additions and 20 deletions.
50 changes: 30 additions & 20 deletions epi-barco-g60/BarcoG60Device.cs
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ public void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, E
SetInput = inputIndex;
});

trilist.StringInput[(ushort)(joinMap.InputNamesOffset.JoinNumber + inputIndex)].StringValue = input.Key;
trilist.StringInput[(ushort)(joinMap.InputNamesOffset.JoinNumber + inputIndex)].StringValue = string.IsNullOrEmpty(input.Key) ? string.Empty : input.Key;

InputFeedback[inputIndex].LinkInputSig(trilist.BooleanInput[joinMap.InputSelectOffset.JoinNumber + (uint)inputIndex]);
}
Expand All @@ -159,9 +159,11 @@ public void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, E
});

// input (analog feedback)
CurrentInputNumberFeedback.LinkInputSig(trilist.UShortInput[joinMap.InputSelect.JoinNumber]);
CurrentInputFeedback.OutputChange +=
(sender, args) => Debug.Console(DebugNotice, this, "CurrentInputFeedback: {0}", args.StringValue);
if (CurrentInputNumberFeedback != null)
CurrentInputNumberFeedback.LinkInputSig(trilist.UShortInput[joinMap.InputSelect.JoinNumber]);

if(CurrentInputFeedback != null)
CurrentInputFeedback.OutputChange += (sender, args) => Debug.Console(DebugNotice, this, "CurrentInputFeedback: {0}", args.StringValue);

// lamp hours feeback
LampHoursFeedback.LinkInputSig(trilist.UShortInput[joinMap.LampHours.JoinNumber]);
Expand All @@ -180,13 +182,17 @@ public void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, E
trilist.SetBool(joinMap.HasLift.JoinNumber, HasLift);
PowerIsOnFeedback.FireUpdate();
CurrentInputFeedback.FireUpdate();
CurrentInputNumberFeedback.FireUpdate();
if(CurrentInputFeedback != null)
CurrentInputFeedback.FireUpdate();
if(CurrentInputNumberFeedback != null)
CurrentInputNumberFeedback.FireUpdate();
for (var i = 0; i < InputPorts.Count; i++)
{
var inputIndex = i;
InputFeedback[inputIndex].FireUpdate();
if(InputFeedback != null)
InputFeedback[inputIndex].FireUpdate();
}
LampHoursFeedback.FireUpdate();
Expand Down Expand Up @@ -442,6 +448,12 @@ public override void ExecuteSwitch(object selector)
public IntFeedback CurrentInputNumberFeedback;

private RoutingInputPort _currentInputPort;

protected override Func<string> CurrentInputFeedbackFunc
{
get { return () => _currentInputPort != null ? _currentInputPort.Key : string.Empty; }
}

private List<bool> _inputFeedback;
private int _currentInputNumber;

Expand Down Expand Up @@ -499,11 +511,6 @@ private void AddRoutingInputPort(RoutingInputPort port, string fbMatch)
InputPorts.Add(port);
}

protected override Func<string> CurrentInputFeedbackFunc
{
get { return () => _currentInputPort.Key; }
}

private void InitializeInputs()
{
// TODO [ ] verify feedback match value ** last parameter of AddRoutingInputPort - string **
Expand Down Expand Up @@ -871,14 +878,17 @@ public override void PowerToggle()
/// </summary>
public void StatusGet()
{
CrestronInvoke.BeginInvoke((o) =>
{
PowerGet();
CrestronEnvironment.Sleep(2000);
InputGet();
CrestronEnvironment.Sleep(2000);
LampGet();
});
PowerGet();

if (!PowerIsOn) return;

CrestronEnvironment.Sleep(2000);
InputGet();

if (!HasLamps) return;

CrestronEnvironment.Sleep(2000);
LampGet();
}


Expand Down

0 comments on commit fa7144b

Please sign in to comment.