This is a collaborative space. In order to contribute, send an email to maximilien.chaumon@icm-institute.org
On any page, type the letter L on your keyboard to add a "Label" to the page, which will make search easier.
Structure of configuration file generated by BL
When you run an App locally, you use a config.json.example
(to test your App), or if you're not the developer of the App, you use a config.json
that has the same keys as the config.json.example
available on the GitHub repository.
The keys of these configuration files are the input files corresponding to the datatype used and the parameters of the functions used by the App. For instance, for an App with a input neuro/meg/fif
datatype where four optional files are listed in the file mapping:
{
"fif": "/network/lustre/iss01/home/aurore.bussalb/Repositories/test_snr/data/subject_1/bad_channels_1.fif",
"calibration": "/network/lustre/iss01/home/aurore.bussalb/Repositories/data_test_BL/sss_cal.dat",
"crosstalk": "/network/lustre/iss01/home/aurore.bussalb/Repositories/data_test_BL/ct_sparse.fif",
"destination": "/network/lustre/iss01/home/aurore.bussalb/Repositories/data_test_BL/mean_tm-raw.fif",
"headshape": null
}
However, in the config.json
other keys are present in this file: _app
, _tid
, _inputs
, and _outputs
.
The config file is parsed by the Python file of the App and becomes a Python dictionary. If you want to use this dictionary as a **kwargs
for instance, you need to delete the keys generated by BL:
if '_app' and '_tid' and '_inputs' and '_outputs' in config.keys():
del config['_app'], config['_tid'], config['_inputs'], config['_outputs']
These lines were added to helper.py
(see Create a helper.py file)
The previous keys are always present in the config.json
, but when you applied a pipeline rule (i.e. if you apply the app on several subjects in a raw, see How to run an App on Brainlife) a new key is added to config.json
: _rule
. So this key must also be deleted from the config dictionary when it existed.
Other keys may appear, so this function may need to be updated to take into account all of these keys.