from .....Internal.Core import Core
from .....Internal.CommandsGroup import CommandsGroup
from .....Internal import Conversions
from ..... import enums
from ..... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class LselectCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("lselect", core, parent)
[docs]
def set(self, clk_lev_sel: enums.ReferenceLevelMode, measurement=repcap.Measurement.Default, measClck=repcap.MeasClck.Default) -> None:
"""
``MEASurement<*>:AMPTime:CLCK<*>:LSELect`` \n
Snippet: ``driver.measurement.ampTime.clck.lselect.set(clk_lev_sel = enums.ReferenceLevelMode.LOWer, measurement = repcap.Measurement.Default, measClck = repcap.MeasClck.Default)`` \n
Selects the reference level of the clock on which the time is measured. Reference level and clock slope define the time
point for setup and hold measurements.
:param clk_lev_sel: UPPer | MIDDle | LOWer
:param measurement: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Measurement')
:param measClck: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Clck')
"""
param = Conversions.enum_scalar_to_str(clk_lev_sel, enums.ReferenceLevelMode)
measurement_cmd_val = self._cmd_group.get_repcap_cmd_value(measurement, repcap.Measurement)
measClck_cmd_val = self._cmd_group.get_repcap_cmd_value(measClck, repcap.MeasClck)
self._core.io.write_with_opc(f'MEASurement{measurement_cmd_val}:AMPTime:CLCK{measClck_cmd_val}:LSELect {param}')
# noinspection PyTypeChecker
[docs]
def get(self, measurement=repcap.Measurement.Default, measClck=repcap.MeasClck.Default) -> enums.ReferenceLevelMode:
"""
``MEASurement<*>:AMPTime:CLCK<*>:LSELect`` \n
Snippet: ``value: enums.ReferenceLevelMode = driver.measurement.ampTime.clck.lselect.get(measurement = repcap.Measurement.Default, measClck = repcap.MeasClck.Default)`` \n
Selects the reference level of the clock on which the time is measured. Reference level and clock slope define the time
point for setup and hold measurements.
:param measurement: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Measurement')
:param measClck: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Clck')
"""
measurement_cmd_val = self._cmd_group.get_repcap_cmd_value(measurement, repcap.Measurement)
measClck_cmd_val = self._cmd_group.get_repcap_cmd_value(measClck, repcap.MeasClck)
response = self._core.io.query_str_with_opc(f'MEASurement{measurement_cmd_val}:AMPTime:CLCK{measClck_cmd_val}:LSELect?')
return Conversions.str_to_scalar_enum(response, enums.ReferenceLevelMode)