Skip to content

Commit dbcfab0

Browse files
committed
fix: final customizations of niworkflows' utilities
The structural pipeline is now working. Close #2.
1 parent 72dca04 commit dbcfab0

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

dmriprep/utils/bids.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,40 @@
55
import sys
66
import json
77
from pathlib import Path
8+
from bids import BIDSLayout
9+
10+
11+
def collect_data(bids_dir, participant_label, task=None, echo=None,
12+
bids_validate=True):
13+
"""Replacement for niworkflows' version."""
14+
if isinstance(bids_dir, BIDSLayout):
15+
layout = bids_dir
16+
else:
17+
layout = BIDSLayout(str(bids_dir), validate=bids_validate)
18+
19+
queries = {
20+
'fmap': {'datatype': 'fmap'},
21+
'dwi': {'datatype': 'dwi', 'suffix': 'dwi'},
22+
'bold': {'datatype': 'func', 'suffix': 'bold'},
23+
'sbref': {'datatype': 'func', 'suffix': 'sbref'},
24+
'flair': {'datatype': 'anat', 'suffix': 'FLAIR'},
25+
't2w': {'datatype': 'anat', 'suffix': 'T2w'},
26+
't1w': {'datatype': 'anat', 'suffix': 'T1w'},
27+
'roi': {'datatype': 'anat', 'suffix': 'roi'},
28+
}
29+
30+
if task:
31+
queries['bold']['task'] = task
32+
33+
if echo:
34+
queries['bold']['echo'] = echo
35+
36+
subj_data = {
37+
dtype: sorted(layout.get(return_type='file', subject=participant_label,
38+
extension=['nii', 'nii.gz'], **query))
39+
for dtype, query in queries.items()}
40+
41+
return subj_data, layout
842

943

1044
def write_derivative_description(bids_dir, deriv_dir):

dmriprep/workflows/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@
2222
from niworkflows.interfaces.bids import (
2323
BIDSInfo, BIDSFreeSurferDir
2424
)
25-
from niworkflows.utils.bids import collect_data
2625
from niworkflows.utils.misc import fix_multi_T1w_source_name
2726
from smriprep.workflows.anatomical import init_anat_preproc_wf
2827

2928
from ..interfaces import DerivativesDataSink, BIDSDataGrabber
3029
from ..interfaces.reports import SubjectSummary, AboutSummary
30+
from ..utils.bids import collect_data
3131
from ..__about__ import __version__
3232
# from .dwi import init_dwi_preproc_wf
3333

0 commit comments

Comments
 (0)