from .......Internal.Core import Core
from .......Internal.CommandsGroup import CommandsGroup
from .......Internal.StructBase import StructBase
from .......Internal.ArgStruct import ArgStruct
from ....... import repcap
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class EsFlatnessCls:
"""
| Commands in total: 1
| Subgroups: 0
| Direct child commands: 1
"""
def __init__(self, core: Core, parent):
self._core = core
self._cmd_group = CommandsGroup("esFlatness", core, parent)
# noinspection PyTypeChecker
[docs]
class EsFlatnessStruct(StructBase):
"""
Structure for setting input parameters. Fields: \n
- 1 Enable: bool: OFF: disables the limit check ON: enables the limit check
- 2 Range_1: float: Upper limit for max(range 1) - min(range 1)
- 3 Range_2: float: Upper limit for max(range 2) - min(range 2)
- 4 Max_1_Min_2: float: Upper limit for max(range 1) - min(range 2)
- 5 Max_2_Min_1: float: Upper limit for max(range 2) - min(range 1)
- 6 Edge_Frequency: float: Band edge distance of border between range 1 and range 2
"""
__meta_args_list = [
ArgStruct.scalar_bool('Enable'),
ArgStruct.scalar_float('Range_1'),
ArgStruct.scalar_float('Range_2'),
ArgStruct.scalar_float('Max_1_Min_2'),
ArgStruct.scalar_float('Max_2_Min_1'),
ArgStruct.scalar_float('Edge_Frequency')]
def __init__(self):
StructBase.__init__(self, self)
self.Enable: bool=None
self.Range_1: float=None
self.Range_2: float=None
self.Max_1_Min_2: float=None
self.Max_2_Min_1: float=None
self.Edge_Frequency: float=None
[docs]
def set(self, structure: EsFlatnessStruct, qam=repcap.Qam.Default) -> None:
"""
``CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM<order>:ESFLatness`` \n
Snippet with structure: \n
structure = driver.configure.nrSubMeas.multiEval.limit.qam.esFlatness.EsFlatnessStruct() \n
structure.Enable: bool = False \n
structure.Range_1: float = 1.0 \n
structure.Range_2: float = 1.0 \n
structure.Max_1_Min_2: float = 1.0 \n
structure.Max_2_Min_1: float = 1.0 \n
structure.Edge_Frequency: float = 1.0 \n
driver.configure.nrSubMeas.multiEval.limit.qam.esFlatness.set(structure, qam = repcap.Qam.Default) \n
Defines limits for the equalizer spectrum flatness (QAM modulations) .
:param structure: for set value, see the help for EsFlatnessStruct structure arguments.
:param qam: optional repeated capability selector. Default value: Order16 (settable in the interface 'Qam')
"""
qam_cmd_val = self._cmd_group.get_repcap_cmd_value(qam, repcap.Qam)
self._core.io.write_struct(f'CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM{qam_cmd_val}:ESFLatness', structure)
[docs]
def get(self, qam=repcap.Qam.Default) -> EsFlatnessStruct:
"""
``CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM<order>:ESFLatness`` \n
Snippet: ``value: EsFlatnessStruct = driver.configure.nrSubMeas.multiEval.limit.qam.esFlatness.get(qam = repcap.Qam.Default)`` \n
Defines limits for the equalizer spectrum flatness (QAM modulations) .
:param qam: optional repeated capability selector. Default value: Order16 (settable in the interface 'Qam')
:return: structure: for return value, see the help for EsFlatnessStruct structure arguments.
"""
qam_cmd_val = self._cmd_group.get_repcap_cmd_value(qam, repcap.Qam)
return self._core.io.query_struct(f'CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM{qam_cmd_val}:ESFLatness?', self.__class__.EsFlatnessStruct())