from ....Internal.Core import Core
from ....Internal.CommandsGroup import CommandsGroup
from ....Internal import Conversions
from .... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class StateCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("state", core, parent)
[docs]
def set(self, is_enabled: bool, deembedding=repcap.Deembedding.Default, component=repcap.Component.Default) -> None:
"""
``DEEMbedding<*>:COMPonent<*>[:STATe]`` \n
Snippet: ``driver.deembedding.component.state.set(is_enabled = False, deembedding = repcap.Deembedding.Default, component = repcap.Component.Default)`` \n
Enables or disables the indicated component for deembedding. The first and the last component are always enabled and
cannot be disabled.
:param is_enabled: OFF | ON
:param deembedding: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Deembedding')
:param component: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Component')
"""
param = Conversions.bool_to_str(is_enabled)
deembedding_cmd_val = self._cmd_group.get_repcap_cmd_value(deembedding, repcap.Deembedding)
component_cmd_val = self._cmd_group.get_repcap_cmd_value(component, repcap.Component)
self._core.io.write_with_opc(f'DEEMbedding{deembedding_cmd_val}:COMPonent{component_cmd_val}:STATe {param}')
[docs]
def get(self, deembedding=repcap.Deembedding.Default, component=repcap.Component.Default) -> bool:
"""
``DEEMbedding<*>:COMPonent<*>[:STATe]`` \n
Snippet: ``value: bool = driver.deembedding.component.state.get(deembedding = repcap.Deembedding.Default, component = repcap.Component.Default)`` \n
Enables or disables the indicated component for deembedding. The first and the last component are always enabled and
cannot be disabled.
:param deembedding: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Deembedding')
:param component: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Component')
:return: is_enabled: OFF | ON
"""
deembedding_cmd_val = self._cmd_group.get_repcap_cmd_value(deembedding, repcap.Deembedding)
component_cmd_val = self._cmd_group.get_repcap_cmd_value(component, repcap.Component)
response = self._core.io.query_str_with_opc(f'DEEMbedding{deembedding_cmd_val}:COMPonent{component_cmd_val}:STATe?')
return Conversions.str_to_bool(response)