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 ModeCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("mode", core, parent)
[docs]
def set(self, mode: enums.PositionMode, measurement=repcap.Measurement.Default) -> None:
"""
``MEASurement<*>:GATE:MODE`` \n
Snippet: ``driver.measurement.gate.mode.set(mode = enums.PositionMode.ABS, measurement = repcap.Measurement.Default)`` \n
Defines whether the gate settings are configured using absolute or relative values.
:param mode: ABS | REL
:param measurement: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Measurement')
"""
param = Conversions.enum_scalar_to_str(mode, enums.PositionMode)
measurement_cmd_val = self._cmd_group.get_repcap_cmd_value(measurement, repcap.Measurement)
self._core.io.write_with_opc(f'MEASurement{measurement_cmd_val}:GATE:MODE {param}')
# noinspection PyTypeChecker
[docs]
def get(self, measurement=repcap.Measurement.Default) -> enums.PositionMode:
"""
``MEASurement<*>:GATE:MODE`` \n
Snippet: ``value: enums.PositionMode = driver.measurement.gate.mode.get(measurement = repcap.Measurement.Default)`` \n
Defines whether the gate settings are configured using absolute or relative values.
:param measurement: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Measurement')
:return: mode: ABS | REL
"""
measurement_cmd_val = self._cmd_group.get_repcap_cmd_value(measurement, repcap.Measurement)
response = self._core.io.query_str_with_opc(f'MEASurement{measurement_cmd_val}:GATE:MODE?')
return Conversions.str_to_scalar_enum(response, enums.PositionMode)