Source code for RsCmwWcdmaSig.Implementations.Sense_.UeCapability_.RfParameter_.Band

from .....Internal.Core import Core
from .....Internal.CommandsGroup import CommandsGroup
from .....Internal.StructBase import StructBase
from .....Internal.ArgStruct import ArgStruct
from .....Internal.RepeatedCapability import RepeatedCapability
from ..... import enums
from ..... import repcap


# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
[docs]class Band: """Band commands group definition. 2 total commands, 1 Sub-groups, 1 group commands Repeated Capability: Band, default value after init: Band.B1""" def __init__(self, core: Core, parent): self._core = core self._base = CommandsGroup("band", core, parent) self._base.rep_cap = RepeatedCapability(self._base.group_name, 'repcap_band_get', 'repcap_band_set', repcap.Band.B1) def repcap_band_set(self, enum_value: repcap.Band) -> None: """Repeated Capability default value numeric suffix. This value is used, if you do not explicitely set it in the child set/get methods, or if you leave it to Band.Default Default value after init: Band.B1""" self._base.set_repcap_enum_value(enum_value) def repcap_band_get(self) -> repcap.Band: """Returns the current default repeated capability for the child set/get methods""" # noinspection PyTypeChecker return self._base.get_repcap_enum_value() @property def nc(self): """nc commands group. 0 Sub-classes, 1 commands.""" if not hasattr(self, '_nc'): from .Band_.Nc import Nc self._nc = Nc(self._core, self._base) return self._nc # noinspection PyTypeChecker
[docs] class GetStruct(StructBase): """Response structure. Fields: \n - Supported: enums.YesNoStatus: NO | YES Support of non-contiguous multi-cell operation - Power_Class: int: The UE power class - Add_Sec_Cells: int: Number of additional secondary serving cells supported by the UE. The absence of this IE means that the UE does not support multi-cell operation on three or four cells. - Ul_Oltd: enums.YesNoStatus: NO | YES Support of uplink open loop transmit diversity - Nc_2_C: enums.YesNoStatus: NO | YES Support of non-contiguous multi-cell operation on two cells - Nc_3_C: enums.YesNoStatus: NO | YES Support of non-contiguous multi-cell operation on three cells - Nc_4_C: enums.YesNoStatus: NO | YES Support of non-contiguous multi-cell operation on four cells - Ul_Cltd: enums.YesNoStatus: NO | YES Support of uplink closed loop transmit diversity in CELL_DCH - Ul_Mimo: enums.YesNoStatus: NO | YES Support of uplink MIMO in CELL_DCH - Mimo_4_X_4_Mode: enums.YesNoStatus: NO | YES Support of MIMO mode with four transmit antennas in CELL_DCH - Freq_Spec_Cmn_Cop: enums.YesNoStatus: NO | YES Support of frequency-specific compressed mode for intra-band non-contiguous operation""" __meta_args_list = [ ArgStruct.scalar_enum('Supported', enums.YesNoStatus), ArgStruct.scalar_int('Power_Class'), ArgStruct.scalar_int('Add_Sec_Cells'), ArgStruct.scalar_enum('Ul_Oltd', enums.YesNoStatus), ArgStruct.scalar_enum('Nc_2_C', enums.YesNoStatus), ArgStruct.scalar_enum('Nc_3_C', enums.YesNoStatus), ArgStruct.scalar_enum('Nc_4_C', enums.YesNoStatus), ArgStruct.scalar_enum('Ul_Cltd', enums.YesNoStatus), ArgStruct.scalar_enum('Ul_Mimo', enums.YesNoStatus), ArgStruct.scalar_enum('Mimo_4_X_4_Mode', enums.YesNoStatus), ArgStruct.scalar_enum('Freq_Spec_Cmn_Cop', enums.YesNoStatus)] def __init__(self): StructBase.__init__(self, self) self.Supported: enums.YesNoStatus = None self.Power_Class: int = None self.Add_Sec_Cells: int = None self.Ul_Oltd: enums.YesNoStatus = None self.Nc_2_C: enums.YesNoStatus = None self.Nc_3_C: enums.YesNoStatus = None self.Nc_4_C: enums.YesNoStatus = None self.Ul_Cltd: enums.YesNoStatus = None self.Ul_Mimo: enums.YesNoStatus = None self.Mimo_4_X_4_Mode: enums.YesNoStatus = None self.Freq_Spec_Cmn_Cop: enums.YesNoStatus = None
[docs] def get(self, band=repcap.Band.Default) -> GetStruct: """SCPI: SENSe:WCDMa:SIGNaling<instance>:UECapability:RFParameter:BAND<band> \n Snippet: value: GetStruct = driver.sense.ueCapability.rfParameter.band.get(band = repcap.Band.Default) \n Queries the UE capabilities for the selected band related to non-contiguous multi-cell operation. \n :param band: optional repeated capability selector. Default value: B1 (settable in the interface 'Band') :return: structure: for return value, see the help for GetStruct structure arguments.""" band_cmd_val = self._base.get_repcap_cmd_value(band, repcap.Band) return self._core.io.query_struct(f'SENSe:WCDMa:SIGNaling<Instance>:UECapability:RFParameter:BAND{band_cmd_val}?', self.__class__.GetStruct())
def clone(self) -> 'Band': """Clones the group by creating new object from it and its whole existing sub-groups Also copies all the existing default Repeated Capabilities setting, which you can change independently without affecting the original group""" new_group = Band(self._core, self._base.parent) self._base.synchronize_repcaps(new_group) return new_group