@@ -106,6 +106,7 @@ class Level1DesignInputSpec(SPMCommandInputSpec):
106
106
desc = ('Model serial correlations '
107
107
'AR(1), FAST or none. FAST '
108
108
'is available in SPM12' ))
109
+ flags = traits .Dict (desc = 'Additional arguments to the job, e.g. a common SPm operation is to modify the default masking threshold (mthresh)' )
109
110
110
111
111
112
class Level1DesignOutputSpec (TraitedSpec ):
@@ -125,6 +126,7 @@ class Level1Design(SPMCommand):
125
126
>>> level1design.inputs.interscan_interval = 2.5
126
127
>>> level1design.inputs.bases = {'hrf':{'derivs': [0,0]}}
127
128
>>> level1design.inputs.session_info = 'session_info.npz'
129
+ >>> level1design.inputs.flags = {'mthresh': 0.4}
128
130
>>> level1design.run() # doctest: +SKIP
129
131
130
132
"""
@@ -151,7 +153,11 @@ def _parse_inputs(self):
151
153
"""validate spm realign options if set to None ignore
152
154
"""
153
155
einputs = super (Level1Design ,
154
- self )._parse_inputs (skip = ('mask_threshold' ))
156
+ self )._parse_inputs (skip = ('mask_threshold' , 'flags' ))
157
+ if isdefined (self .inputs .flags ):
158
+ einputs [0 ].update (
159
+ {flag : val
160
+ for (flag , val ) in self .inputs .flags .items ()})
155
161
for sessinfo in einputs [0 ]['sess' ]:
156
162
sessinfo ['scans' ] = scans_for_fnames (
157
163
ensure_list (sessinfo ['scans' ]), keep4d = False )
0 commit comments