@@ -2860,7 +2860,7 @@ def __init__(self, name, parent_device, connection, digital_gate={}, freq_limits
28602860 digital_gate (dict, optional): Configures a digital output to use as an enable/disable
28612861 gate for the output. Should contain keys `'device'` and `'connection'`
28622862 with arguments for the `parent_device` and `connection` for instantiating
2863- the :obj:`DigitalOut`.
2863+ the :obj:`DigitalOut`. All other (optional) keys are passed as kwargs.
28642864 freq_limits (tuple, optional): `(lower, upper)` limits for the
28652865 frequency of the output
28662866 freq_conv_class (:obj:`labscript_utils:labscript_utils.unitconversions`, optional):
@@ -2912,8 +2912,10 @@ def __init__(self, name, parent_device, connection, digital_gate={}, freq_limits
29122912 self .phase = AnalogQuantity (self .name + '_phase' , self , 'phase' , phase_limits , phase_conv_class , phase_conv_params )
29132913
29142914 self .gate = None
2915- if 'device' in digital_gate and 'connection' in digital_gate :
2916- self .gate = DigitalOut (name + '_gate' , digital_gate ['device' ], digital_gate ['connection' ])
2915+ if 'device' in digital_gate and 'connection' in digital_gate :
2916+ dev = digital_gate .pop ('device' )
2917+ conn = digital_gate .pop ('connection' )
2918+ self .gate = DigitalOut (name + '_gate' , dev , conn , ** digital_gate )
29172919 # Did they only put one key in the dictionary, or use the wrong keywords?
29182920 elif len (digital_gate ) > 0 :
29192921 raise LabscriptError ('You must specify the "device" and "connection" for the digital gate of %s.' % (self .name ))
@@ -3041,7 +3043,7 @@ def __init__(self,name,parent_device,connection,digital_gate = {},freq_limits =
30413043 digital_gate (dict, optional): Configures a digital output to use as an enable/disable
30423044 gate for the output. Should contain keys `'device'` and `'connection'`
30433045 with arguments for the `parent_device` and `connection` for instantiating
3044- the :obj:`DigitalOut`.
3046+ the :obj:`DigitalOut`. All other (optional) keys are passed as kwargs.
30453047 freq_limits (tuple, optional): `(lower, upper)` limits for the
30463048 frequency of the output
30473049 freq_conv_class (:obj:`labscript_utils:labscript_utils.unitconversions`, optional):
@@ -3091,8 +3093,10 @@ def __init__(self,name,parent_device,connection,digital_gate = {},freq_limits =
30913093 self .amplitude = StaticAnalogQuantity (self .name + '_amp' ,self ,'amp' ,amp_limits ,amp_conv_class ,amp_conv_params )
30923094 self .phase = StaticAnalogQuantity (self .name + '_phase' ,self ,'phase' ,phase_limits ,phase_conv_class ,phase_conv_params )
30933095
3094- if 'device' in digital_gate and 'connection' in digital_gate :
3095- self .gate = DigitalOut (self .name + '_gate' ,digital_gate ['device' ],digital_gate ['connection' ])
3096+ if 'device' in digital_gate and 'connection' in digital_gate :
3097+ dev = digital_gate .pop ('device' )
3098+ conn = digital_gate .pop ('connection' )
3099+ self .gate = DigitalOut (name + '_gate' , dev , conn , ** digital_gate )
30963100 # Did they only put one key in the dictionary, or use the wrong keywords?
30973101 elif len (digital_gate ) > 0 :
30983102 raise LabscriptError ('You must specify the "device" and "connection" for the digital gate of %s.' % (self .name ))
0 commit comments