Provide generic interface for control backend implementations#24
Open
twischer-adit wants to merge 1 commit into
Open
Provide generic interface for control backend implementations#24twischer-adit wants to merge 1 commit into
twischer-adit wants to merge 1 commit into
Conversation
Signed-off-by: Timo Wischer <twischer@de.adit-jv.com>
Owner
|
I'm not a huge fan in general, to be honest, but I could probably be convinced if it ends up clean enough. The only concrete problem I have with this API is locking. This is much too flakey, and I don't think it's appropriate for Jalv internals to be (trying to) call lock and unlock methods everywhere (correctly). The best way to do things like this is to have an actual protocol which more or less avoids concurrency issues entirely, but if some "control backend" wants to use threads and shared memory or whatever, that's its problem to be dealt with internally. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This interface allows to implement different backends for the lv2 control ports. The simple backend implements the current behavior.
Another backend implementation could provide a simple telnet server to change and read the control ports.
I will rebase #21 on top of this PR soon. So this would be the second control backend implementation. By default the simple backend will be used but at compile time the implementation of #21 can be selected.
Please provide your feedback what you think about this additional interface. Are you missing any functions?