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 adds a 'channels' keyword to the parser. When declaring channel, for each channel one can declare the active ids ('ids') (which can be altered in the resource), whether or not the channel can be selected from within a command ('can_select') (ie Ch 1:VOLT:IMM is supported).
If a device property can be used to select a channel it should be declared under the name 'select_channel'.
This also adds support for concatenating multiple commands separated by a special character (';' by default and can be specified by declaring a 'delimiter' field.
I also re-factored some things I needed in channel away from devices, they are now in component.py
I added some very basic tests also.
This is ready for review from my point of view. I will try to prepare another PR for sending error messages to an error queue and declare a dialog to query the last error.