Source code for RsCMPX_NrFr1Meas.Implementations.Configure.NrSubMeas.MultiEval.Limit.Qam.Perror

from .......Internal.Core import Core
from .......Internal.CommandsGroup import CommandsGroup
from .......Internal.Types import DataType
from .......Internal.StructBase import StructBase
from .......Internal.ArgStruct import ArgStruct
from .......Internal.ArgSingleList import ArgSingleList
from .......Internal.ArgSingle import ArgSingle
from ....... import repcap


# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class PerrorCls:
	"""
	| Commands in total: 1
	| Subgroups: 0
	| Direct child commands: 1
	"""

	def __init__(self, core: Core, parent):
		self._core = core
		self._cmd_group = CommandsGroup("perror", core, parent)

[docs] def set(self, rms: float | bool, peak: float | bool, qam=repcap.Qam.Default) -> None: """ ``CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM<order>:PERRor`` \n Snippet: ``driver.configure.nrSubMeas.multiEval.limit.qam.perror.set(rms = 1.0, peak = 1.0, qam = repcap.Qam.Default)`` \n Defines symmetric limits for the RMS and peak values of the phase error for QAM modulations. The limit check fails if the absolute value of the measured phase error exceeds the specified limit. :param rms: (float or boolean) numeric | ON | OFF :param peak: (float or boolean) numeric | ON | OFF :param qam: optional repeated capability selector. Default value: Order16 (settable in the interface 'Qam') """ param = ArgSingleList().compose_cmd_string(ArgSingle('rms', rms, DataType.FloatExt), ArgSingle('peak', peak, DataType.FloatExt)) qam_cmd_val = self._cmd_group.get_repcap_cmd_value(qam, repcap.Qam) self._core.io.write(f'CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM{qam_cmd_val}:PERRor {param}'.rstrip())
# noinspection PyTypeChecker
[docs] class PerrorStruct(StructBase): """ Response structure. Fields: \n - 1 Rms: float | bool: numeric | ON | OFF - 2 Peak: float | bool: numeric | ON | OFF """ __meta_args_list = [ ArgStruct.scalar_float_ext('Rms'), ArgStruct.scalar_float_ext('Peak')] def __init__(self): StructBase.__init__(self, self) self.Rms: float | bool = None self.Peak: float | bool = None
[docs] def get(self, qam=repcap.Qam.Default) -> PerrorStruct: """ ``CONFigure:NRSub:MEASurement<Instance>:MEValuation:LIMit:QAM<order>:PERRor`` \n Snippet: ``value: PerrorStruct = driver.configure.nrSubMeas.multiEval.limit.qam.perror.get(qam = repcap.Qam.Default)`` \n Defines symmetric limits for the RMS and peak values of the phase error for QAM modulations. The limit check fails if the absolute value of the measured phase error exceeds the specified limit. :param qam: optional repeated capability selector. Default value: Order16 (settable in the interface 'Qam') :return: structure: for return value, see the help for PerrorStruct 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}:PERRor?', self.__class__.PerrorStruct())