|
26 | 26 |
|
27 | 27 | from ..base import (traits, TraitedSpec, InputMultiPath, File,
|
28 | 28 | isdefined)
|
29 |
| -from .base import FSLCommand, FSLCommandInputSpec |
| 29 | +from .base import FSLCommand, FSLCommandInputSpec, Info |
30 | 30 |
|
31 | 31 |
|
32 | 32 | class PrepareFieldmapInputSpec(FSLCommandInputSpec):
|
@@ -140,6 +140,13 @@ class TOPUPInputSpec(FSLCommandInputSpec):
|
140 | 140 | out_field = File(argstr='--fout=%s', hash_files=False,
|
141 | 141 | name_source=['in_file'], name_template='%s_field',
|
142 | 142 | desc='name of image file with field (Hz)')
|
| 143 | + out_warp_prefix = traits.Str("warpfield", argstr='--dfout=%s', hash_files=False, |
| 144 | + desc='prefix for the warpfield images (in mm)', |
| 145 | + usedefault=True) |
| 146 | + out_jac_prefix = traits.Str("jac", argstr='--jacout=%s', |
| 147 | + hash_files=False, |
| 148 | + desc='prefix for the warpfield images', |
| 149 | + usedefault=True) |
143 | 150 | out_corrected = File(argstr='--iout=%s', hash_files=False,
|
144 | 151 | name_source=['in_file'], name_template='%s_corrected',
|
145 | 152 | desc='name of 4D image file with unwarped images')
|
@@ -212,6 +219,8 @@ class TOPUPOutputSpec(TraitedSpec):
|
212 | 219 | out_movpar = File(exists=True, desc='movpar.txt output file')
|
213 | 220 | out_enc_file = File(desc='encoding directions file output for applytopup')
|
214 | 221 | out_field = File(desc='name of image file with field (Hz)')
|
| 222 | + out_warps = traits.List(File(exists=True), desc='warpfield images') |
| 223 | + out_jacs = traits.List(File(exists=True), desc='Jacobian images') |
215 | 224 | out_corrected = File(desc='name of 4D image file with unwarped images')
|
216 | 225 | out_logfile = File(desc='name of log-file')
|
217 | 226 |
|
@@ -269,6 +278,13 @@ def _list_outputs(self):
|
269 | 278 | cwd=base_path)
|
270 | 279 | outputs['out_movpar'] = self._gen_fname(base, suffix='_movpar',
|
271 | 280 | ext='.txt', cwd=base_path)
|
| 281 | + n_vols = nb.load(self.inputs.in_file).shape[-1] |
| 282 | + |
| 283 | + outputs['out_warps'] = [os.path.abspath(self.inputs.out_warp_prefix + "_%02d" % (i+1) + Info.output_type_to_ext(self.inputs.output_type)) for i in range(n_vols)] |
| 284 | + outputs['out_jacs'] = [os.path.abspath( |
| 285 | + self.inputs.out_jac_prefix + "_%02d" % ( |
| 286 | + i + 1) + Info.output_type_to_ext(self.inputs.output_type)) for i in |
| 287 | + range(n_vols)] |
272 | 288 |
|
273 | 289 | if isdefined(self.inputs.encoding_direction):
|
274 | 290 | outputs['out_enc_file'] = self._get_encfilename()
|
|
0 commit comments