Skip to content

Commit a9a6bf9

Browse files
committed
ENH: Add --fs-subjects-dir flag
1 parent 493af6d commit a9a6bf9

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

fmriprep/cli/run.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,10 @@ def get_parser():
249249
'--fs-license-file', metavar='PATH', type=Path,
250250
help='Path to FreeSurfer license key file. Get it (for free) by registering'
251251
' at https://surfer.nmr.mgh.harvard.edu/registration.html')
252+
g_fs.add_argument(
253+
'--fs-subjects-dir', metavar='PATH', type=Path,
254+
help='Path to existing FreeSurfer subjects directory to reuse. '
255+
'(default: OUTPUT_DIR/freesurfer)')
252256

253257
# Surface generation xor
254258
g_surfs = parser.add_argument_group('Surface preprocessing options')
@@ -673,6 +677,7 @@ def build_workflow(opts, retval):
673677
fmap_demean=opts.fmap_no_demean,
674678
force_syn=opts.force_syn,
675679
freesurfer=opts.run_reconall,
680+
fs_subjects_dir=opts.fs_subjects_dir,
676681
hires=opts.hires,
677682
ignore=opts.ignore,
678683
layout=layout,

fmriprep/workflows/base.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ def init_fmriprep_wf(
4747
fmap_demean,
4848
force_syn,
4949
freesurfer,
50+
fs_subjects_dir,
5051
hires,
5152
ignore,
5253
layout,
@@ -101,6 +102,7 @@ def init_fmriprep_wf(
101102
fmap_demean=True,
102103
force_syn=True,
103104
freesurfer=True,
105+
fs_subjects_dir=None,
104106
hires=True,
105107
ignore=[],
106108
layout=BIDSLayout('.'),
@@ -221,6 +223,8 @@ def init_fmriprep_wf(
221223
spaces=[s for s in output_spaces.keys() if s.startswith('fsaverage')] + [
222224
'fsnative'] * ('fsnative' in output_spaces)),
223225
name='fsdir_run_' + run_uuid.replace('-', '_'), run_without_submitting=True)
226+
if fs_subjects_dir is not None:
227+
fsdir.inputs.subjects_dir = str(fs_subjects_dir.absolute())
224228

225229
reportlets_dir = os.path.join(work_dir, 'reportlets')
226230
for subject_id in subject_list:

0 commit comments

Comments
 (0)