From 5f2fbca66cd1c151c44461c3d8178f84b62e6a8f Mon Sep 17 00:00:00 2001
From: Sander de Snoo <59472150+sldesnoo-Delft@users.noreply.github.com>
Date: Mon, 4 Dec 2023 10:12:00 +0100
Subject: [PATCH] Configure HW input channel for Keysight digitizer

---
 pulse_lib/base_pulse.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/pulse_lib/base_pulse.py b/pulse_lib/base_pulse.py
index d637a407..fa3632c4 100644
--- a/pulse_lib/base_pulse.py
+++ b/pulse_lib/base_pulse.py
@@ -154,16 +154,20 @@ class pulselib:
         self.marker_channels[marker_name] = marker_channel(marker_name, AWG_name, channel_number,
                                                            setup_ns, hold_ns, amplitude, invert)
 
-    def define_digitizer_channel(self, name, digitizer_name, channel_number, iq_out=False):
+    def define_digitizer_channel(self, name, digitizer_name, channel_number, iq_out=False,
+                                 hw_input_channel=None):
         ''' Defines a digitizer channel.
         Args:
             channel_name (str): name of the channel.
             digitizer_name (str): name of digitizer
             channel_number (int): channel number
             iq_out (bool): if True output I+Q data, else output I data only.
+            hw_input_channel (Optional[int]): channel number of input on hardware. (Keysight only)
         '''
         self._check_uniqueness_of_channel_name(name)
         self.digitizer_channels[name] = digitizer_channel(name, digitizer_name, [channel_number], iq_out=iq_out)
+        if hw_input_channel is not None:
+            self.set_digitizer_hw_input_channel(name, hw_input_channel)
 
     def define_digitizer_channel_iq(self, name, digitizer_name, channel_numbers, phase=0.0, iq_out=False):
         ''' Defines a digitizer I/Q input pair.
-- 
GitLab