knitr::opts_chunk$set(echo = TRUE, collapse = TRUE, comment = "#>")
BiocStyle::markdown()
This vignette aims to describe how to use the workflow ui to process a dataset. The goal is not to describe the different data processing tools available in prostar but to explain the behaviour of the user interface of what we call 'Prostar core'.
As explained in xxx, Prostar implements two different levels of data processing tools:
One timeline is used to navigate within each of these levels. They have mostly the same behaviour
In Prostar, two timelines are used to navigate
When the class Pipeline is instantiated, there is no dataset loaded yet. The two timelines are shown and all their bullets are disabled (as the screens). Thus, the user can navigate on all the tools. In general, when a step is disabled, the user can show the corresponding screen but cannot interact with input widgets.
Common behaviour
The next and previous are always enabled whenever the steps are disabled, except in two situations:
When the user clicks on the previous/next buttons, the current screen change.
A few rules form the basis of the workflow engine:
A pipeline is defined by a list of data processing tools in association with a tag indicating if the step is mandatory or not. The first step of each level is always a description one which explains the algorithms implemented in the tool and how to use it.
Each step of a given level can have different status. It may be:
Timeline color code :
Plain green circle indicates a validated step. When the colors are transparent, it means that the corresponding step is disabled: all inputs and the reset button are disabled.
At the beginning, no dataset is loaded in the core engine. When the user loads one, it is injected in the core engine. By default, the steps receive a NULL value for the dataset. A dataset is loaded in a step only when the user is showing it.
However, if the user go to a disabled step in the pipeline level, the dataset is not loaded.
Once validated, a step is disabled and stay in this state until it is reseted. Thus, the value of all parameters are kept event if the user navigates to other steps.
At a node level (pipeline), each time a step is validated, the corresponding dataset is returned to Prostar. This allows the user to stop an analysis at any time without loosing its work.
At a leaf level (data processing tools), the resulting dataset is returned only when the last step (named 'Validation') is validated. In this case, the engine does not keep intermediate datasets. Here, the datasets are returned to the upper level which is the pipeline.
On a given level, a clic on the 'Reset' button will have the following actions:
A popup appear to indicate to the user that the data will be erased. He has to agree this information to process,
A step is skipped when it has not been validated and a further one is validated. Thus, the status of a step with indice i is set to 'skipped' only when a step with indice j > i is validated. Each skipped step is disabled and if it is a node step (a data processing tool in the pipeline timeline), then all the subsequent steps of the processing tool are also tagged as 'skipped' and disabled, event the 'Reset' button.
WHen the user navigates in the timelines, the steps previously validated are kept in the state they have when they have been validated
By default, when no dataset has been loaded yet, all the steps are disabled
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.