nibcq.measurement.SwitchingSupport ================================== .. py:class:: nibcq.measurement.SwitchingSupport Bases: :py:obj:`abc.ABC`, :py:obj:`nibcq.switch.SwitchAware` Mixin for measurements that support switching functionality. .. py:method:: run_with_switching() :abstractmethod: Run measurement with automatic switching between DUT channels. This method must be implemented by each measurement subclass to provide switching functionality. It should use the SwitchAware mixin capabilities to iterate through configured channels and perform measurements. :returns: List of measurement results for each DUT channel. :rtype: list :raises RuntimeError: If switching not enabled or no channels configured. .. py:property:: has_switch_capability :type: bool Check if the device has switch capability. :returns: True if switch capability is available, False otherwise .. py:method:: connect_channel(channel: SMUCellData) -> None Connect to a specific DUT channel using the device's switch capability. :param channel: SwitchChannel containing connection information :type channel: SMUCellData :raises RuntimeError: If no switch capability is available .. py:method:: disconnect_all() -> None Disconnect all channels using the device's switch capability. :raises RuntimeError: If no switch capability is available .. py:method:: wait_for_debounce() -> None Wait for switch relays to settle using the device's switch capability. :raises RuntimeError: If no switch capability is available .. py:property:: switch_cells :type: List[str] | List[SMUCellData] Get the configured switch cells from the device. :returns: DUT channel names or SMUCellData objects, which contain the DUT and switch channel information. :rtype: list[str] | list[SMUCellData]