Skip to content

Commit 407ea43

Browse files
committed
rf: dcm2niix
1 parent e006985 commit 407ea43

File tree

1 file changed

+23
-16
lines changed

1 file changed

+23
-16
lines changed

nipype/interfaces/dcm2nii.py

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -412,28 +412,35 @@ def _run_interface(self, runtime):
412412
# may use return code 1 despite conversion
413413
runtime = super(Dcm2niix, self)._run_interface(
414414
runtime, correct_return_codes=(0, 1, ))
415-
(self.output_files, self.bvecs,
416-
self.bvals, self.bids) = self._parse_stdout(runtime.stdout)
415+
self._parse_files(self._parse_stdout(runtime.stdout))
417416
return runtime
418417

419418
def _parse_stdout(self, stdout):
420-
outfiles, bvals, bvecs, bids = [], [], [], []
419+
filenames = []
421420
for line in stdout.split("\n"):
422421
if line.startswith("Convert "): # output
423422
fname = str(re.search('\S+/\S+', line).group(0))
424-
fname = os.path.abspath(fname)
425-
outtypes = (".nii", ".nii.gz", ".bval", ".bvec", ".json")
426-
# search for relevant files, and sort accordingly
427-
for fl in search_files(fname, outtypes):
428-
if fl.endswith(".nii") or fl.endswith(".gz"):
429-
outfiles.append(fl)
430-
elif fl.endswith(".bval"):
431-
bvals.append(fl)
432-
elif fl.endswith(".bvec"):
433-
bvecs.append(fl)
434-
elif fl.endswith(".json"):
435-
bids.append(fl)
436-
return outfiles, bvecs, bvals, bids
423+
filenames.append(os.path.abspath(fname))
424+
return filenames
425+
426+
def _parse_files(self, filenames):
427+
outfiles, bvals, bvecs, bids = [], [], [], []
428+
outtypes = (".nii", ".nii.gz", ".bval", ".bvec", ".json")
429+
for filename in filenames:
430+
# search for relevant files, and sort accordingly
431+
for fl in search_files(filename, outtypes):
432+
if fl.endswith(".nii") or fl.endswith(".gz"):
433+
outfiles.append(fl)
434+
elif fl.endswith(".bval"):
435+
bvals.append(fl)
436+
elif fl.endswith(".bvec"):
437+
bvecs.append(fl)
438+
elif fl.endswith(".json"):
439+
bids.append(fl)
440+
self.output_files = outfiles
441+
self.bvecs = bvecs
442+
self.bvals = bvals
443+
self.bids = bids
437444

438445
def _list_outputs(self):
439446
outputs = self.output_spec().get()

0 commit comments

Comments
 (0)