add repeated trigger mode setting to pulse circuit #28
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The pulse circuit had (most likely) undesired behavior when the circuit
was triggered while a pulse was active. The subsequent triggers would
unconditionally schedule tasks to turn off the signal after the pulse
length. So if another pulse started after the first pulse ended, but there
were additional triggers during the initial pulse, then the second pulse
would turn off early.
This commit adds a "repeated trigger" parameter to the pulse circuit.
The 3rd parameter is optional and defaults to "legacy" for the original
behavior. A value of "ignore" causes the circuit to ignore any triggers
while the pulse is active. A value of "extend" causes the circuit to cancel
the original task that would turn off the pulse and schedule a new one
(for the original pulse length).