@@ -292,6 +292,7 @@ def init_bold_wf(
292
292
]) # fmt:skip
293
293
294
294
boldref_out = bool (nonstd_spaces .intersection (('func' , 'run' , 'bold' , 'boldref' , 'sbref' )))
295
+ boldref_out |= config .workflow .level == 'full'
295
296
echos_out = multiecho and config .execution .me_output_echos
296
297
297
298
if boldref_out or echos_out :
@@ -316,30 +317,6 @@ def init_bold_wf(
316
317
]),
317
318
]) # fmt:skip
318
319
319
- if nonstd_spaces .intersection (('anat' , 'T1w' )):
320
- ds_bold_t1_wf = init_ds_volumes_wf (
321
- bids_root = str (config .execution .bids_dir ),
322
- output_dir = fmriprep_dir ,
323
- multiecho = multiecho ,
324
- metadata = all_metadata [0 ],
325
- name = 'ds_bold_t1_wf' ,
326
- )
327
- ds_bold_t1_wf .inputs .inputnode .source_files = bold_series
328
- ds_bold_t1_wf .inputs .inputnode .space = 'T1w'
329
-
330
- workflow .connect ([
331
- (inputnode , ds_bold_t1_wf , [
332
- ('t1w_preproc' , 'inputnode.ref_file' ),
333
- ]),
334
- (bold_fit_wf , ds_bold_t1_wf , [
335
- ('outputnode.bold_mask' , 'inputnode.bold_mask' ),
336
- ('outputnode.coreg_boldref' , 'inputnode.bold_ref' ),
337
- ('outputnode.boldref2anat_xfm' , 'inputnode.boldref2anat_xfm' ),
338
- ]),
339
- (bold_native_wf , ds_bold_t1_wf , [('outputnode.t2star_map' , 'inputnode.t2star' )]),
340
- (bold_anat_wf , ds_bold_t1_wf , [('outputnode.bold_file' , 'inputnode.bold' )]),
341
- ]) # fmt:skip
342
-
343
320
if multiecho :
344
321
t2s_reporting_wf = init_t2s_reporting_wf ()
345
322
@@ -379,6 +356,31 @@ def init_bold_wf(
379
356
if config .workflow .level == "resampling" :
380
357
return workflow
381
358
359
+ # Full derivatives, including resampled BOLD series
360
+ if nonstd_spaces .intersection (('anat' , 'T1w' )):
361
+ ds_bold_t1_wf = init_ds_volumes_wf (
362
+ bids_root = str (config .execution .bids_dir ),
363
+ output_dir = fmriprep_dir ,
364
+ multiecho = multiecho ,
365
+ metadata = all_metadata [0 ],
366
+ name = 'ds_bold_t1_wf' ,
367
+ )
368
+ ds_bold_t1_wf .inputs .inputnode .source_files = bold_series
369
+ ds_bold_t1_wf .inputs .inputnode .space = 'T1w'
370
+
371
+ workflow .connect ([
372
+ (inputnode , ds_bold_t1_wf , [
373
+ ('t1w_preproc' , 'inputnode.ref_file' ),
374
+ ]),
375
+ (bold_fit_wf , ds_bold_t1_wf , [
376
+ ('outputnode.bold_mask' , 'inputnode.bold_mask' ),
377
+ ('outputnode.coreg_boldref' , 'inputnode.bold_ref' ),
378
+ ('outputnode.boldref2anat_xfm' , 'inputnode.boldref2anat_xfm' ),
379
+ ]),
380
+ (bold_native_wf , ds_bold_t1_wf , [('outputnode.t2star_map' , 'inputnode.t2star' )]),
381
+ (bold_anat_wf , ds_bold_t1_wf , [('outputnode.bold_file' , 'inputnode.bold' )]),
382
+ ]) # fmt:skip
383
+
382
384
# Fill-in datasinks of reportlets seen so far
383
385
for node in workflow .list_node_names ():
384
386
if node .split ("." )[- 1 ].startswith ("ds_report" ):
0 commit comments