from ..Internal.Core import Core
from ..Internal.CommandsGroup import CommandsGroup
from ..Internal.StructBase import StructBase
from ..Internal.ArgStruct import ArgStruct
from .. import enums
# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
[docs]class Route:
"""Route commands group definition. 5 total commands, 1 Sub-groups, 1 group commands"""
def __init__(self, core: Core, parent):
self._core = core
self._base = CommandsGroup("route", core, parent)
@property
def scenario(self):
"""scenario commands group. 1 Sub-classes, 3 commands."""
if not hasattr(self, '_scenario'):
from .Route_.Scenario import Scenario
self._scenario = Scenario(self._core, self._base)
return self._scenario
# noinspection PyTypeChecker
[docs] class ValueStruct(StructBase):
"""Structure for reading output parameters. Fields: \n
- Scenario: enums.Scenario: SALone | CSPath | MAPRotocol SALone: Standalone (non-signaling) CSPath: Combined signal path MAPRotocol: Measure@Protocol test
- Controller: str: string Controlling application for scenario CSPath or MAPRotocol
- Rx_Connector: enums.RxConnector: RF connector for the input path
- Rf_Converter: enums.RfConverter: RX module for the input path"""
__meta_args_list = [
ArgStruct.scalar_enum('Scenario', enums.Scenario),
ArgStruct.scalar_str('Controller'),
ArgStruct.scalar_enum('Rx_Connector', enums.RxConnector),
ArgStruct.scalar_enum('Rf_Converter', enums.RfConverter)]
def __init__(self):
StructBase.__init__(self, self)
self.Scenario: enums.Scenario = None
self.Controller: str = None
self.Rx_Connector: enums.RxConnector = None
self.Rf_Converter: enums.RfConverter = None
# noinspection PyTypeChecker
[docs] def get_value(self) -> ValueStruct:
"""SCPI: ROUTe:GSM:MEASurement<Instance> \n
Snippet: value: ValueStruct = driver.route.get_value() \n
Returns the configured routing settings. For possible connector and converter values, see 'Values for RF Path Selection'. \n
:return: structure: for return value, see the help for ValueStruct structure arguments.
"""
return self._core.io.query_struct('ROUTe:GSM:MEASurement<Instance>?', self.__class__.ValueStruct())
def clone(self) -> 'Route':
"""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 = Route(self._core, self._base.parent)
self._base.synchronize_repcaps(new_group)
return new_group