@@ -70,18 +70,13 @@ class Bse(CommandLine):
7070 _cmd = 'bse'
7171
7272 def _gen_filename (self , name ):
73- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
74-
75- if is_user_defined :
76- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
77-
78- return toReturn
73+ inputs = self .inputs .get ()
74+ if isdefined (inputs [name ]):
75+ return os .path .abspath (inputs [name ])
7976
8077 if name == 'outputMRIVolume' :
81- myExtension = '.nii.gz'
82- return '' .join ((os .getcwd (), '/' ,
83- getFileName (self .inputs .inputMRIFile ),
84- "___" , self ._cmd , 'Output_' , name , myExtension ))
78+ return getFileName (self , self .inputs .inputMRIFile , name , '.nii.gz' )
79+
8580 return None
8681
8782 def _list_outputs (self ):
@@ -170,15 +165,12 @@ class Bfc(CommandLine):
170165 _cmd = 'bfc'
171166
172167 def _gen_filename (self , name ):
173- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
174-
175- if is_user_defined :
176- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
177- return toReturn
168+ inputs = self .inputs .get ()
169+ if isdefined (inputs [name ]):
170+ return os .path .abspath (inputs [name ])
178171
179172 if name == 'outputMRIVolume' :
180- myExtension = '.nii.gz'
181- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMRIFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
173+ return getFileName (self , self .inputs .inputMRIFile , name , '.nii.gz' )
182174
183175 return None
184176
@@ -221,17 +213,12 @@ class Pvc(CommandLine):
221213 _cmd = 'pvc'
222214
223215 def _gen_filename (self , name ):
224- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
225- if is_user_defined :
226- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
227- return toReturn
216+ inputs = self .inputs .get ()
217+ if isdefined (inputs [name ]):
218+ return os .path .abspath (inputs [name ])
228219
229- if name == 'outputLabelFile' :
230- myExtension = '.nii.gz'
231- return '' .join ((os .getcwd (), '/' , self ._cmd , 'Output_' , name , myExtension ))
232- if name == 'outputTissueFractionFile' :
233- myExtension = '.nii.gz'
234- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMRIFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
220+ if name == 'outputLabelFile' or name == 'outputTissueFractionFile' :
221+ return getFileName (self , self .inputs .inputMRIFile , name , '.nii.gz' )
235222
236223 return None
237224
@@ -286,18 +273,12 @@ class Cerebro(CommandLine):
286273 _cmd = 'cerebro'
287274
288275 def _gen_filename (self , name ):
289- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
290-
291- if is_user_defined :
292- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
293- return toReturn
276+ inputs = self .inputs .get ()
277+ if isdefined (inputs [name ]):
278+ return os .path .abspath (inputs [name ])
294279
295- if name == 'outputCerebrumMaskFile' :
296- myExtension = '.nii.gz'
297- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMRIFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
298- if name == 'outputLabelMaskFile' :
299- myExtension = '.nii.gz'
300- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMRIFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
280+ if name == 'outputCerebrumMaskFile' or name == 'outputLabelMaskFile' :
281+ return getFileName (self , self .inputs .inputMRIFile , name , '.nii.gz' )
301282
302283 return None
303284
@@ -334,15 +315,12 @@ class Cortex(CommandLine):
334315 _cmd = 'cortex'
335316
336317 def _gen_filename (self , name ):
337- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
338- if is_user_defined :
339- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
340- return toReturn
318+ inputs = self .inputs .get ()
319+ if isdefined (inputs [name ]):
320+ return os .path .abspath (inputs [name ])
341321
342322 if name == 'outputCerebrumMask' :
343- myExtension = '.nii.gz'
344- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputHemisphereLabelFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
345-
323+ return getFileName (self , self .inputs .inputHemisphereLabelFile , name , '.nii.gz' )
346324 return None
347325
348326 def _list_outputs (self ):
@@ -373,14 +351,14 @@ class Scrubmask(CommandLine):
373351 _cmd = 'scrubmask'
374352
375353 def _gen_filename (self , name ):
376- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
377- if is_user_defined :
378- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
379- return toReturn
354+ inputs = self .inputs .get ()
355+ if isdefined (inputs [name ]):
356+ return os .path .abspath (inputs [name ])
380357
381358 if name == 'outputMaskFile' :
382- myExtension = '.nii.gz'
383- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMaskFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
359+ return getFileName (self , self .inputs .inputMaskFile , name , '.nii.gz' )
360+
361+
384362 return None
385363
386364 def _list_outputs (self ):
@@ -412,14 +390,12 @@ class Tca(CommandLine):
412390 _cmd = 'tca'
413391
414392 def _gen_filename (self , name ):
415- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
416- if is_user_defined :
417- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
418- return toReturn
393+ inputs = self .inputs .get ()
394+ if isdefined (inputs [name ]):
395+ return os .path .abspath (inputs [name ])
419396
420397 if name == 'outputMaskFile' :
421- myExtension = '.nii.gz'
422- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMaskFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
398+ return getFileName (self , self .inputs .inputMaskFile , name , '.nii.gz' )
423399
424400 return None
425401
@@ -448,14 +424,12 @@ class Dewisp(CommandLine):
448424 _cmd = 'dewisp'
449425
450426 def _gen_filename (self , name ):
451- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
452- if is_user_defined :
453- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
454- return toReturn
427+ inputs = self .inputs .get ()
428+ if isdefined (inputs [name ]):
429+ return os .path .abspath (inputs [name ])
455430
456431 if name == 'outputMaskFile' :
457- myExtension = '.nii.gz'
458- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMaskFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
432+ return getFileName (self , self .inputs .inputMaskFile , name , '.nii.gz' )
459433
460434 return None
461435
@@ -511,14 +485,12 @@ def _format_arg(self, name, spec, value):
511485 return super (Dfs , self )._format_arg (name , spec , value )
512486
513487 def _gen_filename (self , name ):
514- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
515- if is_user_defined :
516- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
517- return toReturn
488+ inputs = self .inputs .get ()
489+ if isdefined (inputs [name ]):
490+ return os .path .abspath (inputs [name ])
518491
519492 if name == 'outputSurfaceFile' :
520- myExtension = '.dfs'
521- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputVolumeFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
493+ return getFileName (self , self .inputs .inputVolumeFile , name , '.dfs' )
522494
523495 return None
524496
@@ -572,14 +544,12 @@ class Pialmesh(CommandLine):
572544 _cmd = 'pialmesh'
573545
574546 def _gen_filename (self , name ):
575- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
576- if is_user_defined :
577- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
578- return toReturn
547+ inputs = self .inputs .get ()
548+ if isdefined (inputs [name ]):
549+ return os .path .abspath (inputs [name ])
579550
580551 if name == 'outputSurfaceFile' :
581- myExtension = '.dfs'
582- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputSurfaceFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
552+ return getFileName (self , self .inputs .inputSurfaceFile , name , '.dfs' )
583553
584554 return None
585555
@@ -624,14 +594,12 @@ class Skullfinder(CommandLine):
624594 _cmd = 'skullfinder'
625595
626596 def _gen_filename (self , name ):
627- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
628- if is_user_defined :
629- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
630- return toReturn
597+ inputs = self .inputs .get ()
598+ if isdefined (inputs [name ]):
599+ return os .path .abspath (inputs [name ])
631600
632601 if name == 'outputLabelFile' :
633- myExtension = '.nii.gz'
634- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputMRIFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
602+ return getFileName (self , self .inputs .inputMRIFile , name , '.nii.gz' )
635603
636604 return None
637605
@@ -671,42 +639,31 @@ class Hemisplit(CommandLine):
671639 _cmd = 'hemisplit'
672640
673641 def _gen_filename (self , name ):
674- exec ('is_user_defined = isdefined(self.inputs.' + name + ')' )
675- if is_user_defined :
676- exec ("toReturn = os.path.abspath(self.inputs." + name + ")" )
677- return toReturn
678-
679- if name == 'outputLeftHemisphere' :
680- myExtension = '.dfs'
681- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputSurfaceFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
682- if name == 'outputRightHemisphere' :
683- myExtension = '.dfs'
684- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputSurfaceFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
685- if name == 'outputLeftPialHemisphere' :
686- myExtension = '.dfs'
687- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputSurfaceFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
688- if name == 'outputRightPialHemisphere' :
689- myExtension = '.dfs'
690- return '' .join ((os .getcwd (), '/' , getFileName (self .inputs .inputSurfaceFile ), "___" , self ._cmd , 'Output_' , name , myExtension ))
642+ inputs = self .inputs .get ()
643+ if isdefined (inputs [name ]):
644+ return os .path .abspath (inputs [name ])
645+
646+
647+ if (name == 'outputLeftHemisphere'
648+ or name == 'outputRightHemisphere'
649+ or name == 'outputLeftPialHemisphere'
650+ or name == 'outputRightPialHemisphere' ):
651+ return getFileName (self , self .inputs .inputSurfaceFile , name , '.dfs' )
691652
692653 return None
693654
694655 def _list_outputs (self ):
695656 return l_outputs (self )
696657
697-
698- # removes directory of a pathway to a file, removes extension, returns file name
699- # up to first occurence of three consecutive underscore characters (if any)
700- # ex: /home/abc/testData___bseOutput_output_file.nii.gz --> testData
701- def getFileName (string ):
702- underscoreRegex = regex .compile ("[_]{3}" )
658+ # used to generate file names for outputs
659+ # removes pathway and extension of inputName, returns concatenation of]
660+ # inputName, command, name, and extension
661+ def getFileName (self , inputName , name , extension ):
662+ fullInput = os .path .basename (inputName )
703663 dotRegex = regex .compile ("[^.]+" )
704- slashRegex = regex .compile ("[^/]+" )
705- arr = underscoreRegex .split (string )
706- arr2 = dotRegex .findall (arr [0 ])
707- arr3 = slashRegex .findall (arr2 [0 ])
708- return arr3 [len (arr3 ) - 1 ]
709-
664+ inputNoExtension = dotRegex .findall (fullInput )[0 ]
665+ return os .path .abspath (
666+ '' .join ((inputNoExtension , '_' , self ._cmd , '_' , name , extension )))
710667
711668def l_outputs (self ):
712669 outputs = self .output_spec ().get ()
0 commit comments