from .....Internal.Core import Core
from .....Internal.CommandsGroup import CommandsGroup
from .....Internal import Conversions
from .....Internal.StructBase import StructBase
from .....Internal.ArgStruct import ArgStruct
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
[docs]class Sub:
"""Sub commands group definition. 2 total commands, 0 Sub-groups, 2 group commands"""
def __init__(self, core: Core, parent):
self._core = core
self._base = CommandsGroup("sub", core, parent)
# noinspection PyTypeChecker
[docs] class RangeStruct(StructBase):
"""Structure for reading output parameters. Fields: \n
- Lower: int: Range: -110 dBm to -48 dBm, Unit: dBm
- Upper: int: Range: -110 dBm to -48 dBm, Unit: dBm"""
__meta_args_list = [
ArgStruct.scalar_int('Lower'),
ArgStruct.scalar_int('Upper')]
def __init__(self):
StructBase.__init__(self, self)
self.Lower: int = None
self.Upper: int = None
[docs] def get_range(self) -> RangeStruct:
"""SCPI: SENSe:GSM:SIGNaling<Instance>:RREPort:RXLevel:SUB:RANGe \n
Snippet: value: RangeStruct = driver.sense.rreport.rxLevel.sub.get_range() \n
Returns the power level range, corresponding to the 'RX Level Sub' index reported by the MS. \n
:return: structure: for return value, see the help for RangeStruct structure arguments.
"""
return self._core.io.query_struct('SENSe:GSM:SIGNaling<Instance>:RREPort:RXLevel:SUB:RANGe?', self.__class__.RangeStruct())
[docs] def get_value(self) -> int:
"""SCPI: SENSe:GSM:SIGNaling<Instance>:RREPort:RXLevel:SUB \n
Snippet: value: int = driver.sense.rreport.rxLevel.sub.get_value() \n
Returns the 'RX Level Sub' reported by the MS as dimensionless power level. \n
:return: rx_level: Range: 0 to 63
"""
response = self._core.io.query_str('SENSe:GSM:SIGNaling<Instance>:RREPort:RXLevel:SUB?')
return Conversions.str_to_int(response)