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 LogicCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("logic", core, parent)
[docs]
def set(self, op_ab: enums.LogicOperator, trigger=repcap.Trigger.Default, triggerQualify=repcap.TriggerQualify.Default) -> None:
"""
``TRIGger<*>:QUALify<*>:AB:LOGic`` \n
Snippet: ``driver.trigger.qualify.ab.logic.set(op_ab = enums.LogicOperator.AND, trigger = repcap.Trigger.Default, triggerQualify = repcap.TriggerQualify.Default)`` \n
Defines the logical combination of the indicated channels after evaluating the previous logical operations: \n
- AB: CH1 and CH2
- CD: CH3 and CH4
- ABCD: result of AB and CD
:param op_ab: AND | NAND | OR | NOR \n
- AND: logical AND, conjunctive combination
- NAND: logical NOT AND
- OR: logical OR, disjunctive combination
- NOR: logical NOT OR
:param trigger: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Trigger')
:param triggerQualify: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Qualify')
"""
param = Conversions.enum_scalar_to_str(op_ab, enums.LogicOperator)
trigger_cmd_val = self._cmd_group.get_repcap_cmd_value(trigger, repcap.Trigger)
triggerQualify_cmd_val = self._cmd_group.get_repcap_cmd_value(triggerQualify, repcap.TriggerQualify)
self._core.io.write_with_opc(f'TRIGger{trigger_cmd_val}:QUALify{triggerQualify_cmd_val}:AB:LOGic {param}')
# noinspection PyTypeChecker
[docs]
def get(self, trigger=repcap.Trigger.Default, triggerQualify=repcap.TriggerQualify.Default) -> enums.LogicOperator:
"""
``TRIGger<*>:QUALify<*>:AB:LOGic`` \n
Snippet: ``value: enums.LogicOperator = driver.trigger.qualify.ab.logic.get(trigger = repcap.Trigger.Default, triggerQualify = repcap.TriggerQualify.Default)`` \n
Defines the logical combination of the indicated channels after evaluating the previous logical operations: \n
- AB: CH1 and CH2
- CD: CH3 and CH4
- ABCD: result of AB and CD
:param trigger: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Trigger')
:param triggerQualify: optional repeated capability selector. Default value: Nr1 (settable in the interface 'Qualify')
"""
trigger_cmd_val = self._cmd_group.get_repcap_cmd_value(trigger, repcap.Trigger)
triggerQualify_cmd_val = self._cmd_group.get_repcap_cmd_value(triggerQualify, repcap.TriggerQualify)
response = self._core.io.query_str_with_opc(f'TRIGger{trigger_cmd_val}:QUALify{triggerQualify_cmd_val}:AB:LOGic?')
return Conversions.str_to_scalar_enum(response, enums.LogicOperator)