diff --git a/src/neurospin_to_bids/autolist.py b/src/neurospin_to_bids/autolist.py index 08bdbbe..7c1f173 100644 --- a/src/neurospin_to_bids/autolist.py +++ b/src/neurospin_to_bids/autolist.py @@ -20,6 +20,35 @@ logger = logging.getLogger(__name__) +def get_serie_number_for_add_serie_description( + side_seriedescription, series_number, series_list +): + """Get in the series_list the nearest index from the series_number to estimate the + side_seriedescription['SeriesDescription'] file. + + In autolist.yaml, all mbep2d-TR2-1pt2mm-PA files before mbep2d-TR2-1pt2mm-AP-LPP will be + selected and the run number will be incremented : + { + 'SeriesDescription': 'mbep2d-TR2-1pt2mm-AP-LPP[12345678]', + 'data_type': 'func', + 'bids_name': 'task-LPP_dir-ap_run-1_bold', + 'add_file' : {'SeriesDescription': 'mbep2d-TR2-1pt2mm-PA', + 'bids_name' : 'task-LPP_dir-pa_run-1'}, + }, + """ + val_serie_number = None + + for index_serie_number, serie_number in enumerate(series_list): + # Search from the nearest file + if serie_number[0] == series_number: + for i in range(index_serie_number, 0, -1): + if series_list[i][1] == side_seriedescription['SeriesDescription']: + val_serie_number = series_list[i][0] + break + + return val_serie_number + + def autolist_dicom(exp_info_path): """Create participants_to_import.tsv using autolist rules. @@ -164,6 +193,26 @@ def _autolist_dicom_first_pass(series_list, autolist_config, session_dir='