From 3b0ee26fec21228a8c6b10ee214bb83042d23fa4 Mon Sep 17 00:00:00 2001 From: jdkent Date: Fri, 26 May 2017 19:10:14 -0500 Subject: [PATCH 1/3] ENH: ICA_AROMA: make current working directory default output directory --- nipype/interfaces/fsl/ICA_AROMA.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/nipype/interfaces/fsl/ICA_AROMA.py b/nipype/interfaces/fsl/ICA_AROMA.py index a93dc7f37c..c82201aefa 100644 --- a/nipype/interfaces/fsl/ICA_AROMA.py +++ b/nipype/interfaces/fsl/ICA_AROMA.py @@ -17,7 +17,8 @@ File, Directory, traits, - OutputMultiPath + OutputMultiPath, + isdefined ) import os @@ -31,7 +32,7 @@ class ICA_AROMAInputSpec(CommandLineInputSpec): in_file = File(exists=True, mandatory=True, argstr='-i %s', xor=['feat_dir'], desc='volume to be denoised') - out_dir = Directory('out', mandatory=True, + out_dir = Directory('out', genfile=True, argstr='-o %s', desc='output directory') mask = File(exists=True, argstr='-m %s', xor=['feat_dir'], @@ -108,6 +109,10 @@ class ICA_AROMA(CommandLine): def _list_outputs(self): outputs = self.output_spec().get() + if isdefined(self.inputs.out_dir): + outputs['out_dir'] = os.path.abspath(self.inputs.out_dir) + else: + outputs['out_dir'] = self._gen_filename("out_dir") out_dir = os.path.abspath(self.inputs.out_dir) outputs['out_dir'] = out_dir @@ -116,4 +121,8 @@ def _list_outputs(self): if self.inputs.denoise_type in ('nonaggr', 'both'): outputs['nonaggr_denoised_file'] = os.path.join(out_dir, 'denoised_func_data_nonaggr.nii.gz') + def _gen_filename(self, name): + if name == "out_dir": + return os.getcwd() + return outputs From 4f31ec966e4964f07ddb7fab14cb8fd69a476a58 Mon Sep 17 00:00:00 2001 From: jdkent Date: Fri, 26 May 2017 21:05:29 -0500 Subject: [PATCH 2/3] ENH: ICA_AROMA default directory fix --- nipype/interfaces/fsl/ICA_AROMA.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/nipype/interfaces/fsl/ICA_AROMA.py b/nipype/interfaces/fsl/ICA_AROMA.py index c82201aefa..b178ef5fe6 100644 --- a/nipype/interfaces/fsl/ICA_AROMA.py +++ b/nipype/interfaces/fsl/ICA_AROMA.py @@ -112,17 +112,17 @@ def _list_outputs(self): if isdefined(self.inputs.out_dir): outputs['out_dir'] = os.path.abspath(self.inputs.out_dir) else: - outputs['out_dir'] = self._gen_filename("out_dir") - out_dir = os.path.abspath(self.inputs.out_dir) - outputs['out_dir'] = out_dir - + outputs['out_dir'] = self._gen_filename('out_dir') + out_dir = outputs['out_dir'] + if self.inputs.denoise_type in ('aggr', 'both'): outputs['aggr_denoised_file'] = os.path.join(out_dir, 'denoised_func_data_aggr.nii.gz') if self.inputs.denoise_type in ('nonaggr', 'both'): outputs['nonaggr_denoised_file'] = os.path.join(out_dir, 'denoised_func_data_nonaggr.nii.gz') + return outputs def _gen_filename(self, name): - if name == "out_dir": + if name == 'out_dir': return os.getcwd() - return outputs + From 0877483dd9ec0c9acc5538af24cf4d7a7b5a9a56 Mon Sep 17 00:00:00 2001 From: jdkent Date: Fri, 26 May 2017 22:12:51 -0500 Subject: [PATCH 3/3] forgot to update test --- nipype/interfaces/fsl/tests/test_auto_ICA_AROMA.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nipype/interfaces/fsl/tests/test_auto_ICA_AROMA.py b/nipype/interfaces/fsl/tests/test_auto_ICA_AROMA.py index 98f1674639..0e28417b05 100644 --- a/nipype/interfaces/fsl/tests/test_auto_ICA_AROMA.py +++ b/nipype/interfaces/fsl/tests/test_auto_ICA_AROMA.py @@ -44,7 +44,7 @@ def test_ICA_AROMA_inputs(): xor=['feat_dir'], ), out_dir=dict(argstr='-o %s', - mandatory=True, + genfile=True, ), terminal_output=dict(nohash=True, ),