Source code for RsSmw.Implementations.Source.Bb.Btooth.Cs

from ......Internal.Core import Core
from ......Internal.CommandsGroup import CommandsGroup
from ......Internal import Conversions
from ......Internal.StructBase import StructBase
from ......Internal.ArgStruct import ArgStruct
from ...... import enums


# noinspection PyPep8Naming,PyAttributeOutsideInit,SpellCheckingInspection
class CsCls:
	"""
	| Commands in total: 114
	| Subgroups: 3
	| Direct child commands: 20
	"""

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

	@property
	def cdata(self):
		"""
		| Commands in total: 51
		| Subgroups: 3
		| Direct child commands: 45
		"""
		if not hasattr(self, '_cdata'):
			from .Cdata import CdataCls
			self._cdata = CdataCls(self._core, self._cmd_group)
		return self._cdata

	@property
	def correctionTable(self):
		"""
		| Commands in total: 4
		| Subgroups: 1
		| Direct child commands: 0
		"""
		if not hasattr(self, '_correctionTable'):
			from .CorrectionTable import CorrectionTableCls
			self._correctionTable = CorrectionTableCls(self._core, self._cmd_group)
		return self._correctionTable

	@property
	def sevent(self):
		"""
		| Commands in total: 39
		| Subgroups: 24
		| Direct child commands: 0
		"""
		if not hasattr(self, '_sevent'):
			from .Sevent import SeventCls
			self._sevent = SeventCls(self._core, self._cmd_group)
		return self._sevent

	# noinspection PyTypeChecker
[docs] class CfChmStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_Filtered_Ch_M: str: numeric CSFilteredChM value in hexadecimal representation. - Bitcount: int: integer Fixed bit count of 80 bits. Range: 80 to 80 """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_Filtered_Ch_M'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_Filtered_Ch_M: str=None self.Bitcount: int=None
[docs] def get_cf_chm(self) -> CfChmStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CFCHm`` \n Snippet: ``value: CfChmStruct = driver.source.bb.btooth.cs.get_cf_chm()`` \n Queries the value of the field CSFilteredChM. This value determines the bit map for the Channel Sounding channel map update procedure. The parameter is 64-bit in hexadecimal representation. :return: structure: for return value, see the help for CfChmStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CFCHm?', self.__class__.CfChmStruct())
# noinspection PyTypeChecker
[docs] class CincStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_In_C: str: numeric CS_IN_C value in hexadecimal representation. - Bitcount: int: integer Fixed bit count of 32 bits. Range: 32 to 32 """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_In_C'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_In_C: str=None self.Bitcount: int=None
[docs] def get_cinc(self) -> CincStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CINC`` \n Snippet: ``value: CincStruct = driver.source.bb.btooth.cs.get_cinc()`` \n Requires packet type CS SEQUENCE or LL_CS_SEC_REQ. Sets the CS_IN_C parameter. The parameter is 32-bit in hexadecimal representation. :return: structure: for return value, see the help for CincStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CINC?', self.__class__.CincStruct())
# noinspection PyTypeChecker
[docs] class CinpStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_In_P: str: numeric CS_IN_P value in hexadecimal representation. - Bitcount: int: integer Fixed bit count of 32 bits. Range: 32 to 32 """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_In_P'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_In_P: str=None self.Bitcount: int=None
[docs] def get_cinp(self) -> CinpStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CINP`` \n Snippet: ``value: CinpStruct = driver.source.bb.btooth.cs.get_cinp()`` \n Requires packet type CS SEQUENCE or LL_CS_SEC_REQ. Sets the CS_IN_P parameter. The parameter is 32-bit in hexadecimal representation. :return: structure: for return value, see the help for CinpStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CINP?', self.__class__.CinpStruct())
[docs] def get_cinterval(self) -> float: """ ``[SOURce<HW>]:BB:BTOoth:CS:CINTerval`` \n Snippet: ``value: float = driver.source.bb.btooth.cs.get_cinterval()`` \n Sets the time of the LE connection interval. The anchor points of two consecutive CS events define the length of this interval. :return: connect_interval: float Range: 7.5 to 4000 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:CINTerval?') return Conversions.str_to_float(response)
# noinspection PyTypeChecker
[docs] class CivcStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_Iv_C: str: numeric CS_IV_C value in hexadecimal representation. - Bitcount: int: integer Fixed bit count of 64 bits. Range: 64 to 64 """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_Iv_C'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_Iv_C: str=None self.Bitcount: int=None
[docs] def get_civc(self) -> CivcStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CIVC`` \n Snippet: ``value: CivcStruct = driver.source.bb.btooth.cs.get_civc()`` \n Requires packet type CS SEQUENCE or LL_CS_SEC_REQ. Sets the CS_IV_C parameter. The parameter is 64-bit in hexadecimal representation. :return: structure: for return value, see the help for CivcStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CIVC?', self.__class__.CivcStruct())
# noinspection PyTypeChecker
[docs] class CivpStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_Iv_P: str: numeric CS_IV_P value in hexadecimal representation. - Bitcount: int: integer Fixed bit count of 64 bits. Range: 64 to 64 """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_Iv_P'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_Iv_P: str=None self.Bitcount: int=None
[docs] def get_civp(self) -> CivpStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CIVP`` \n Snippet: ``value: CivpStruct = driver.source.bb.btooth.cs.get_civp()`` \n Requires packet type CS SEQUENCE or LL_CS_SEC_REQ. Sets the CS_IV_P parameter. The parameter is 64-bit in hexadecimal representation. :return: structure: for return value, see the help for CivpStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CIVP?', self.__class__.CivpStruct())
[docs] def get_cm_repetition(self) -> int: """ ``[SOURce<HW>]:BB:BTOoth:CS:CMRepetition`` \n Snippet: ``value: int = driver.source.bb.btooth.cs.get_cm_repetition()`` \n Sets the 3-bit ChM_Repetition field. The value equals the number of cycles of the ChM field for non-Mode-0 steps within a CS procedure. :return: chm_repetition: integer Range: 1 to 3 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:CMRepetition?') return Conversions.str_to_int(response)
# noinspection PyTypeChecker
[docs] class CpvcStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_Pv_C: str: No parameter help available - Bitcount: int: No parameter help available """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_Pv_C'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_Pv_C: str=None self.Bitcount: int=None
[docs] def get_cpvc(self) -> CpvcStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CPVC`` \n Snippet: ``value: CpvcStruct = driver.source.bb.btooth.cs.get_cpvc()`` \n No help available :return: structure: for return value, see the help for CpvcStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CPVC?', self.__class__.CpvcStruct())
# noinspection PyTypeChecker
[docs] class CpvpStruct(StructBase): """ Structure for reading output parameters. Fields: \n - Cs_Pv_P: str: numeric CS_PV_P value in hexadecimal representation. - Bitcount: int: integer Fixed bit count of 64 bits. Range: 64 to 64 """ __meta_args_list = [ ArgStruct.scalar_raw_str('Cs_Pv_P'), ArgStruct.scalar_int('Bitcount')] def __init__(self): StructBase.__init__(self, self) self.Cs_Pv_P: str=None self.Bitcount: int=None
[docs] def get_cpvp(self) -> CpvpStruct: """ ``[SOURce<HW>]:BB:BTOoth:CS:CPVP`` \n Snippet: ``value: CpvpStruct = driver.source.bb.btooth.cs.get_cpvp()`` \n Requires packet type CS SEQUENCE or LL_CS_SEC_REQ. Sets the CS_PV_P parameter. The parameter is 64-bit in hexadecimal representation. :return: structure: for return value, see the help for CpvpStruct structure arguments. """ return self._core.io.query_struct('SOURce<HwInstance>:BB:BTOoth:CS:CPVP?', self.__class__.CpvpStruct())
# noinspection PyTypeChecker
[docs] def get_csel(self) -> enums.BtoCsChSel: """ ``[SOURce<HW>]:BB:BTOoth:CS:CSEL`` \n Snippet: ``value: enums.BtoCsChSel = driver.source.bb.btooth.cs.get_csel()`` \n Sets the algorithm to select the channels. :return: ch_sel: SEL_3B | SEL_3C SEL_3B Sets for Algorithm #3b channel selection algorithm. SEL_3C Sets for Algorithm #3c channel selection algorithm. For related parameters, see Table 'Algorithm #3c parameters'. """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:CSEL?') return Conversions.str_to_scalar_enum(response, enums.BtoCsChSel)
# noinspection PyTypeChecker
[docs] def get_ctc_jump(self) -> enums.BtoCsCh3Cjump: """ ``[SOURce<HW>]:BB:BTOoth:CS:CTCJump`` \n Snippet: ``value: enums.BtoCsCh3Cjump = driver.source.bb.btooth.cs.get_ctc_jump()`` \n Determines the number of skipped channels when rendering the channel shapes. The Ch3cJump field has a length of 1 octet and relates to the channel index values. Configure this field when using the channel selection algorithm Algorithm #3c: SOURce1:BB:BTOoth:CS:CSEL SEL_3C :return: ch_three_cjump: JUMP_2 | JUMP_3 | JUMP_4 | JUMP_5 | JUMP_6 | JUMP_7 | JUMP_8 For Ch3cJump field parameters, see Table 'Algorithm #3c parameters'. """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:CTCJump?') return Conversions.str_to_scalar_enum(response, enums.BtoCsCh3Cjump)
# noinspection PyTypeChecker
[docs] def get_ctc_shape(self) -> enums.BtoCsCh3Cshape: """ ``[SOURce<HW>]:BB:BTOoth:CS:CTCShape`` \n Snippet: ``value: enums.BtoCsCh3Cshape = driver.source.bb.btooth.cs.get_ctc_shape()`` \n Sets the bits of the Ch3cShape field. The field has a length of 4 bits and sets the shaping method of the rising and falling ramps of the channels. Configure this field when using the channel selection algorithm Algorithm #3c: SOURce1:BB:BTOoth:CS:CSEL SEL_3C :return: ch_three_cshape: HAT | X HAT Channel with a rising ramp and a falling ramp. X Channel with interleaved rising and falling ramps. """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:CTCShape?') return Conversions.str_to_scalar_enum(response, enums.BtoCsCh3Cshape)
[docs] def get_einterval(self) -> int: """ ``[SOURce<HW>]:BB:BTOoth:CS:EINTerval`` \n Snippet: ``value: int = driver.source.bb.btooth.cs.get_einterval()`` \n Sets the number of LE connection event intervals. :return: event_interval: integer Range: 1 to 65535 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:EINTerval?') return Conversions.str_to_int(response)
[docs] def get_eoffset(self) -> int: """ ``[SOURce<HW>]:BB:BTOoth:CS:EOFFset`` \n Snippet: ``value: int = driver.source.bb.btooth.cs.get_eoffset()`` \n Sets the time between the anchor point of the LE connection event and the beginning of the CS event. If you select manual step scheduling, you can set event offsets lower than 500 microseconds. An offset of 0 microseconds means that the CS event starts at the anchor point of the LE connection event. :return: event_offset: integer Range: 500 to 4e6 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:EOFFset?') return Conversions.str_to_int(response)
[docs] def get_ntfcs(self) -> bool: """ ``[SOURce<HW>]:BB:BTOoth:CS:NTFCs`` \n Snippet: ``value: bool = driver.source.bb.btooth.cs.get_ntfcs()`` \n Enables setting of a zero frequency change period (T_FCS) in the first CS step. :return: no_tfcs: 1 | ON | 0| OFF """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:NTFCs?') return Conversions.str_to_bool(response)
# noinspection PyTypeChecker
[docs] def get_role(self) -> enums.BtoCsRoles: """ ``[SOURce<HW>]:BB:BTOoth:CS:ROLE`` \n Snippet: ``value: enums.BtoCsRoles = driver.source.bb.btooth.cs.get_role()`` \n Sets the role of the channel sounding device that is the R&S SMW200A. :return: role: INITiator | REFLector INITiator The instrument initiates a CS procedure. REFLector The instrument responds to a CS procedure. """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:ROLE?') return Conversions.str_to_scalar_enum(response, enums.BtoCsRoles)
[docs] def get_sinterval(self) -> int: """ ``[SOURce<HW>]:BB:BTOoth:CS:SINTerval`` \n Snippet: ``value: int = driver.source.bb.btooth.cs.get_sinterval()`` \n Sets the subevent interval. This interval is the time in multiples of 625 us between the beginning of a CS subevent and the beginning of the next CS subevent within the same CS event. For SOURce1:BB:BTO:CS:SNUM 1, the subevent interval is 0us. For SOURce1:BB:BTO:CS:SNUM 2 or higher, settable subevent intervals depend on the number of event intervals, the connection interval, the event offset and the subevent length. See also method ``RsSmw.source.bb.btooth.cs.snumber()`` . :return: sub_interval: integer Range: 0 to 2.7e11 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:SINTerval?') return Conversions.str_to_int(response)
[docs] def get_slength(self) -> int: """ ``[SOURce<HW>]:BB:BTOoth:CS:SLENgth`` \n Snippet: ``value: int = driver.source.bb.btooth.cs.get_slength()`` \n Sets the subevent length that is the duration of a CS subevent. You can set values in multiples of 625 us. Settable subevent lengths depend on the number of event intervals, the connection interval, the event offset and the subevent interval. :return: sub_length: integer Range: 1250 to 4e6 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:SLENgth?') return Conversions.str_to_int(response)
[docs] def get_snumber(self) -> int: """ ``[SOURce<HW>]:BB:BTOoth:CS:SNUMber`` \n Snippet: ``value: int = driver.source.bb.btooth.cs.get_snumber()`` \n Sets number of subevents. Settable values depend on the subevent interval. :return: sub_number: integer Range: 1 to 32 """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:SNUMber?') return Conversions.str_to_int(response)
# noinspection PyTypeChecker
[docs] def get_sscheduling(self) -> enums.AutoManualMode: """ ``[SOURce<HW>]:BB:BTOoth:CS:SSCHeduling`` \n Snippet: ``value: enums.AutoManualMode = driver.source.bb.btooth.cs.get_sscheduling()`` \n Sets the step scheduling mode. :return: step_scheduling: AUTO | MANual AUTO Automatic CS step scheduling. The subevent length, the subevent interval and the number of subevents are configurable. The number of CS steps is 2. MANual Manual CS step scheduling. The subevent length is 1250 us, the subevent interval is 0 us and the number of subevents is 1. The number of CS steps is configurable. """ response = self._core.io.query_str('SOURce<HwInstance>:BB:BTOoth:CS:SSCHeduling?') return Conversions.str_to_scalar_enum(response, enums.AutoManualMode)
def clone(self) -> 'CsCls': """ Clones the group by creating new object from it and its whole existing subgroups. Also copies all the existing default Repeated Capabilities setting, which you can change independently without affecting the original group. """ new_group = CsCls(self._core, self._cmd_group.parent) self._cmd_group.synchronize_repcaps(new_group) return new_group