from ........Internal.Core import Core
from ........Internal.CommandsGroup import CommandsGroup
from ........Internal import Conversions
from ........ import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class RefPositionCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("refPosition", core, parent)
[docs]
def set(self, position: float, window=repcap.Window.Default, subWindow=repcap.SubWindow.Default, trace=repcap.Trace.Default) -> None:
"""
``DISPlay[:WINDow<n>][:SUBWindow<w>]:TRACe<t>:Y[:SCALe]:RPOSition`` \n
Snippet: ``driver.display.window.subwindow.trace.y.scale.refPosition.set(position = 1.0, window = repcap.Window.Default, subWindow = repcap.SubWindow.Default, trace = repcap.Trace.Default)`` \n
Defines the vertical position of the reference level on the display grid (for all traces) . The FSW adjusts the scaling
of the y-axis accordingly. For measurements with the optional external generator control, the command defines the
position of the reference value.
:param position: 0 PCT corresponds to the lower display border, 100% corresponds to the upper display border. Unit: PCT
:param window: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Window')
:param subWindow: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Subwindow')
:param trace: optional repeated capability selector. Default value: Tr1 (settable in the interface 'Trace')
"""
param = Conversions.decimal_value_to_str(position)
window_cmd_val = self._cmd_group.get_repcap_cmd_value(window, repcap.Window)
subWindow_cmd_val = self._cmd_group.get_repcap_cmd_value(subWindow, repcap.SubWindow)
trace_cmd_val = self._cmd_group.get_repcap_cmd_value(trace, repcap.Trace)
self._core.io.write(f'DISPlay:WINDow{window_cmd_val}:SUBWindow{subWindow_cmd_val}:TRACe{trace_cmd_val}:Y:SCALe:RPOSition {param}')
[docs]
def get(self, window=repcap.Window.Default, subWindow=repcap.SubWindow.Default, trace=repcap.Trace.Default) -> float:
"""
``DISPlay[:WINDow<n>][:SUBWindow<w>]:TRACe<t>:Y[:SCALe]:RPOSition`` \n
Snippet: ``value: float = driver.display.window.subwindow.trace.y.scale.refPosition.get(window = repcap.Window.Default, subWindow = repcap.SubWindow.Default, trace = repcap.Trace.Default)`` \n
Defines the vertical position of the reference level on the display grid (for all traces) . The FSW adjusts the scaling
of the y-axis accordingly. For measurements with the optional external generator control, the command defines the
position of the reference value.
:param window: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Window')
:param subWindow: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Subwindow')
:param trace: optional repeated capability selector. Default value: Tr1 (settable in the interface 'Trace')
:return: position: 0 PCT corresponds to the lower display border, 100% corresponds to the upper display border. Unit: PCT
"""
window_cmd_val = self._cmd_group.get_repcap_cmd_value(window, repcap.Window)
subWindow_cmd_val = self._cmd_group.get_repcap_cmd_value(subWindow, repcap.SubWindow)
trace_cmd_val = self._cmd_group.get_repcap_cmd_value(trace, repcap.Trace)
response = self._core.io.query_str(f'DISPlay:WINDow{window_cmd_val}:SUBWindow{subWindow_cmd_val}:TRACe{trace_cmd_val}:Y:SCALe:RPOSition?')
return Conversions.str_to_float(response)