enh(ui): enhance toolbar.xml
Description
the configuration toolbar.xml handles the camera start/play/pause. Here are several enhancements proposed:
Naming
"toolbar" is not explicit as name. In particular it does not only propose a toolbar, but a complete video grabing handling process.
In addition the id is sight::config::io::video::Toolbar
the :: can be quite con fusiong for understanding, or even programatically parsing.
Missing out signal Channels
However, some signals are not output and can not be treated at a parent config level.
Unconnect auto play on file selection
The file reading mechanism plays the video as soon as it has been selected. This is not expected when associated with a matricesReader which synchronises the position with video: the video starts while the position file has not been chosen.
documentation
There is no real documentation of this config and how to reuse it
Functional specifications
nothing in particular for the signals, and the video should not start when the file option is selected.
Technical specifications
Naming
new name proposition:
- fileName : grabbingHandler.xml
- id : sight_config_io_video_grabbingHandler
Missing out signal Channels
add the signals channels on toolbar.xml:
<param name="cameraPausedChannelOut" default="cameraPausedChannelOut" />
<param name="cameraResumePauseChannelOut" default="cameraResumePauseChannelOut" />
<param name="loopModeToggleChannelOut" default="loopModeToggleChannelOut" />
<param name="configuredFileOut" default="configuredFileOut" />
<param name="configuredStreamOut" default="configuredStreamOut" />
<param name="configuredDeviceOut" default="configuredDeviceOut" />
Unconnect auto play on file selection
Delete the connection :
<connect>
<signal>videoSelectorSrv/configuredDevice</signal>
<slot>startVideoAct/update</slot>
</connect>
If this is expected, as the fileConfiguredDevice signal is forwarded in a channel, the connection can be done at a parent config level.
documentation
Add a service type documentation at the top of the config, with a description of what the config does, of the parameters, and a usage sample