@@ -652,6 +652,11 @@ class Registration(ANTSCommand):
652652 _quantilesDone = False
653653 _linear_transform_names = ['Rigid' , 'Affine' , 'Translation' , 'CompositeAffine' , 'Similarity' ]
654654
655+ def __init__ (self , ** inputs ):
656+ super (Registration , self ).__init__ (** inputs )
657+ self ._elapsed_time = 0.0
658+ self ._metric_value = 0.0
659+
655660 def _run_interface (self , runtime , correct_return_codes = (0 ,)):
656661 runtime = super (Registration , self )._run_interface (runtime )
657662
@@ -661,11 +666,10 @@ def _run_interface(self, runtime, correct_return_codes=(0,)):
661666 for l in lines [::- 1 ]:
662667 # This should be the last line
663668 if l .strip ().startswith ('Total elapsed time:' ):
664- setattr ( self , ' _elapsed_time' , float (
665- l . strip (). replace ( 'Total elapsed time: ' , '' ) ))
669+ self . _elapsed_time = float ( l . strip (). replace (
670+ 'Total elapsed time: ' , '' ))
666671 elif 'DIAGNOSTIC' in l :
667- setattr (self , '_metric_value' , float (
668- l .split (',' )[2 ]))
672+ self ._metric_value = float (l .split (',' )[2 ])
669673 break
670674
671675 return runtime
@@ -1004,6 +1008,6 @@ def _list_outputs(self):
10041008 if len (self .inputs .save_state ):
10051009 outputs ['save_state' ] = os .path .abspath (self .inputs .save_state )
10061010 if self .inputs .profiling :
1007- outputs ['metric_value' ] = getattr ( self , ' _metric_value' )
1008- outputs ['elapsed_time' ] = getattr ( self , ' _elapsed_time' )
1011+ outputs ['metric_value' ] = self . _metric_value
1012+ outputs ['elapsed_time' ] = self . _elapsed_time
10091013 return outputs
0 commit comments