Source code for nirfmxwcdma.enums

"""enums.py - Contains enum classes."""

from enum import Enum, IntFlag


[docs] class TriggerType(Enum): """TriggerType.""" NONE = 0 r"""No Reference Trigger is configured.""" DIGITAL_EDGE = 1 r"""The Reference Trigger is not asserted until a digital edge is detected. The source of the digital edge is specified using the :py:attr:`~nirfmxwcdma.attributes.AttributeID.DIGITAL_EDGE_TRIGGER_SOURCE` attribute.""" IQ_POWER_EDGE = 2 r"""The Reference Trigger is asserted when the signal changes past the level specified by the slope (rising or falling), which is configured using the :py:attr:`~nirfmxwcdma.attributes.AttributeID.IQ_POWER_EDGE_TRIGGER_SLOPE` attribute.""" SOFTWARE = 3 r"""The Reference Trigger is not asserted until a software trigger occurs."""
[docs] class DigitalEdgeTriggerEdge(Enum): """DigitalEdgeTriggerEdge.""" RISING_EDGE = 0 r"""The trigger asserts on the rising edge of the signal.""" FALLING_EDGE = 1 r"""The trigger asserts on the falling edge of the signal."""
[docs] class IQPowerEdgeTriggerLevelType(Enum): """IQPowerEdgeTriggerLevelType.""" RELATIVE = 0 r"""The IQ Power Edge Level attribute is relative to the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.REFERENCE_LEVEL` attribute.""" ABSOLUTE = 1 r"""The IQ Power Edge Level attribute specifies the absolute power."""
[docs] class IQPowerEdgeTriggerSlope(Enum): """IQPowerEdgeTriggerSlope.""" RISING_SLOPE = 0 r"""The trigger asserts when the signal power is rising.""" FALLING_SLOPE = 1 r"""The trigger asserts when the signal power is falling."""
[docs] class TriggerMinimumQuietTimeMode(Enum): """TriggerMinimumQuietTimeMode.""" MANUAL = 0 r"""The minimum quiet time for triggering is the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.TRIGGER_MINIMUM_QUIET_TIME_DURATION` attribute.""" AUTO = 1 r"""The measurement computes the minimum quiet time used for triggering."""
[docs] class LinkDirection(Enum): """LinkDirection.""" DOWNLINK = 0 r"""The link is from the base transceiver station to the user equipment.""" UPLINK = 1 r"""The link is from the user equipment to the base transceiver station."""
[docs] class ChannelConfigurationMode(Enum): """ChannelConfigurationMode.""" AUTO_DETECT = 0 r"""The measurement detects the channels.""" USER_DEFINED = 1 r"""Configure the channels using the :py:attr:`~nirfmxwcdma.attributes.AttributeID.NUMBER_OF_CHANNELS` attribute and the :py:meth:`configure_user_defined_channel_array` method.""" TEST_MODEL = 2 r"""Choose from the standard-defined channel configurations using the :py:attr:`~nirfmxwcdma.attributes.AttributeID.UPLINK_TEST_MODEL` attribute."""
[docs] class ModulationType(Enum): """ModulationType.""" MODULATION_TYPE_BPSK_QPSK = 0 r"""The modulation type is BPSK.""" MODULATION_TYPE_4PAM_16QAM = 1 r"""The modulation type is 4-PAM.""" MODULATION_TYPE_64QAM = 2 r"""The modulation type is 64-QAM."""
[docs] class Branch(Enum): """Branch.""" I = 0 r"""The signal is modulated in the in-phase branch.""" Q = 1 r"""The signal is modulated in the quadrature-phase branch.""" I_AND_Q = 2 r"""The signal is complex modulated."""
[docs] class UplinkTestModel(Enum): """UplinkTestModel.""" R6_C_2_1 = 0 r"""The UL R6 C.2.1 configuration (12.2 kbps) is as defined in Annex C, section C.2.1 of the *3GPP TS 34.121* specification, version 6.3.0, release 6.""" R6_C_2_2 = 1 r"""The UL R6 C.2.2 configuration (64 kbps) is as defined in Annex C, section C.2.2 of the *3GPP TS 34.121* specification, version 6.3.0, release 6.""" R6_C_2_3 = 2 r"""The UL R6 C.2.3 configuration (144 kbps) is as defined in Annex C, section C.2.3 of the *3GPP TS 34.121* specification, version 6.3.0, release 6.""" R6_C_2_4 = 3 r"""The UL R6 C.2.4 configuration (384 kbps) is as defined in Annex C, section C.2.4 of the *3GPP TS 34.121* specification, version 6.3.0, release 6.""" R6_C_2_5 = 4 r"""The UL R6 C.2.5 configuration (768 kbps) is as defined in Annex C, section C.2.5 of the *3GPP TS 34.121* specification, version 6.3.0, release 6.""" R6_C_10_1_4_SUBTEST1 = 5 r"""The UL R6 C.10.1.4 Subtest1 is as defined in Annex C, table C.10.1.4 Sub-Test 1 of the *3GPP TS 34.121* specification, release 6.""" R6_C_10_1_4_SUBTEST2 = 6 r"""The UL R6 C.10.1.4 Subtest2 is as defined in Annex C, table C.10.1.4 Sub-Test 2 of the *3GPP TS 34.121* specification, release 6.""" R6_C_10_1_4_SUBTEST3 = 7 r"""The UL R6 C.10.1.4 Subtest3 is as defined in Annex C, table C.10.1.4 Sub-Test 3 of the *3GPP TS 34.121* specification, release 6.""" R6_C_10_1_4_SUBTEST4 = 8 r"""The UL R6 C.10.1.4 Subtest4 is as defined in Annex C, table C.10.1.4 Sub-Test 4 of the *3GPP TS 34.121* specification, release 6.""" R6_C_10_1_4_SUBTEST5 = 9 r"""The UL R6 C.10.1.4 Subtest5 is as defined in Annex C, table C.10.1.4 Sub-Test 5 of the *3GPP TS 34.121* specification, release 6.""" R6_C_10_1_4_SUBTEST6 = 10 r"""The UL R6 C.10.1.4 Subtest6 is as defined in Annex C, table C.10.1.4 Sub-Test 6 of the *3GPP TS 34.121* specification, release 6.""" R7_C_10_1_4_SUBTEST1 = 11 r"""The UL R7 C.10.1.4 Subtest1 is as defined in Annex C, table C.10.1.4 Sub-Test 1 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_10_1_4_SUBTEST2 = 12 r"""The UL R7 C.10.1.4 Subtest2 is as defined in Annex C, table C.10.1.4 Sub-Test 2 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_10_1_4_SUBTEST3 = 13 r"""The UL R7 C.10.1.4 Subtest3 is as defined in Annex C, table C.10.1.4 Sub-Test 3 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_10_1_4_SUBTEST4 = 14 r"""The UL R7 C.10.1.4 Subtest4 is as defined in Annex C, table C.10.1.4 Sub-Test 4 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_11_1_3_SUBTEST1 = 15 r"""The UL R7 C.11.1.3 Subtest1 is as defined in Annex C, table C.11.1.3 Sub-Test 1 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_11_1_3_SUBTEST2 = 16 r"""The UL R7 C.11.1.3 Subtest2 is as defined in Annex C, table C.11.1.3 Sub-Test 2 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_11_1_3_SUBTEST3 = 17 r"""The UL R7 C.11.1.3 Subtest3 is as defined in Annex C, table C.11.1.3 Sub-Test 3 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_11_1_3_SUBTEST4 = 18 r"""The UL R7 C.11.1.3 Subtest4 is as defined in Annex C, table C.11.1.3 Sub-Test 4 of the *3GPP TS 34.121-1* specification, release 7.""" R7_C_11_1_3_SUBTEST5 = 19 r"""The UL R7 C.11.1.3 Subtest5 is as defined in Annex C, table C.11.1.3 Sub-Test 5 of the *3GPP TS 34.121-1* specification, release 7.""" R8_C_11_1_3_SUBTEST1 = 20 r"""The UL R8 C.11.1.3 Subtest1 is as defined in Annex C, table C.11.1.3 Sub-Test 1 of the *3GPP TS 34.121-1* specification, release 8.""" R8_C_11_1_3_SUBTEST2 = 21 r"""The UL R8 C.11.1.3 Subtest2 is as defined in Annex C, table C.11.1.3 Sub-Test 2 of the *3GPP TS 34.121-1* specification, release 8.""" R8_C_11_1_3_SUBTEST3 = 22 r"""The UL R8 C.11.1.3 Subtest3 is as defined in Annex C, table C.11.1.3 Sub-Test 3 of the *3GPP TS 34.121-1* specification, release 8.""" R8_C_11_1_3_SUBTEST4 = 23 r"""The UL R8 C.11.1.3 Subtest4 is as defined in Annex C, table C.11.1.3 Sub-Test 4 of the *3GPP TS 34.121-1* specification, release 8.""" R8_C_11_1_3_SUBTEST5 = 24 r"""The UL R8 C.11.1.3 Subtest5 is as defined in Annex C, table C.11.1.3 Sub-Test 5 of the *3GPP TS 34.121-1* specification, release 8.""" R8_C_11_1_4_SUBTEST1 = 25 r"""The UL R8 C.11.1.4 Subtest1 is as defined in Annex C, table C.11.1.4 Sub-Test 1 of the *3GPP TS 34.121-1* specification, release 8."""
[docs] class DownlinkTestModel(Enum): """DownlinkTestModel.""" TEST_MODEL_1_16DPCH = 0 r"""Test Model 1 with 16 DPCH is used for synchronization.""" TEST_MODEL_1_32DPCH = 1 r"""Test Model 1 with 32 DPCH is used for synchronization.""" TEST_MODEL_1_64DPCH = 2 r"""Test Mode 1 with 64 DPCH is used for synchronization.""" TEST_MODEL_1_16DPCH_SCCPCH = 3 r"""Test Model 1 with 16 DPCH and S-CCPCH is used for synchronization.""" TEST_MODEL_1_32DPCH_SCCPCH = 4 r"""Test Model 1 with 32 DPCH and S-CCPCH is used for synchronization.""" TEST_MODEL_1_64DPCH_SCCPCH = 5 r"""Test Model 1 with 64 DPCH and S-CCPCH is used for synchronization.""" TEST_MODEL_2 = 6 r"""Test Model 2 is used for synchronization.""" TEST_MODEL_2_SCCPCH = 7 r"""Test Model 2 with a S-CCPCH is used for synchronization.""" TEST_MODEL_3_16DPCH = 8 r"""Test Mode 3 with 16 DPCH is used for synchronization.""" TEST_MODEL_3_32DPCH = 9 r"""Test Mode 3 with 32 DPCH is used for synchronization.""" TEST_MODEL_3_16DPCH_SCCPCH = 10 r"""Test Model 3 with 16 DPCH/S-CCPCH is used for synchronization.""" TEST_MODEL_3_32DPCH_SCCPCH = 11 r"""Test Model 3 with 16 DPCH/S-CCPCH is used for synchronization.""" TEST_MODEL_4 = 12 r"""Test Model 4 is used for synchronization.""" TEST_MODEL_4_PCPICH = 13 r"""Test Model 4 with P-CPICH is used for synchronization.""" TEST_MODEL_5_2HSPDSCH_16QAM = 14 r"""Test Model 5 with 2 HS-PDSCH [16QAM] is used for synchronization.""" TEST_MODEL_5_4HSPDSCH_4DPCH_16QAM = 15 r"""Test Model 5 with 4 HS-PDSCH / 4DPCH [16QAM] is used for synchronization.""" TEST_MODEL_5_4HSPDSCH_14DPCH_16QAM = 16 r"""Test Model 5 with 4 HS-PDSCH / 14DPCH [16QAM] is used for synchronization.""" TEST_MODEL_5_8HSPDSCH_16QAM = 17 r"""Test Model 5 with 8 HS-PDSCH [16QAM] is used for synchronization.""" TEST_MODEL_6_4HSPDSCH_64QAM = 18 r"""Test Model 6 with 4 HS-PDSCH [64QAM] is used for synchronization.""" TEST_MODEL_6_8HSPDSCH_64QAM = 19 r"""Test Model 6 with 8 HS-PDSCH [64QAM] is used for synchronization."""
[docs] class UplinkScramblingType(Enum): """UplinkScramblingType.""" LONG = 0 r"""A long scrambling code as defined in section 4.3.2 of the * 3GPP TS 25.213* specification, version 11.4.0, release 11, is used.""" SHORT = 1 r"""A short scrambling code as defined in section 4.3.2 of the * 3GPP TS 25.213* specification, version 11.4.0, release 11, is used."""
[docs] class DownlinkScramblingType(Enum): """DownlinkScramblingType.""" STANDARD = 0 r"""Selects the standard code type.""" LEFT = 1 r"""Selects the left code type""" RIGHT = 2 r"""Selects the right code type"""
[docs] class ModAccSynchronizationMode(Enum): """ModAccSynchronizationMode.""" FRAME = 0 r"""The frame boundary is detected, and the measurement is performed over the number of slots expressed by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.MODACC_MEASUREMENT_LENGTH` attribute starting at :py:attr:`~nirfmxwcdma.attributes.AttributeID.MODACC_MEASUREMENT_OFFSET` slots from the frame boundary.""" SLOT = 1 r"""The slot boundary is detected and the measurement is performed over the number of slots expressed by the ModAcc Measurement Length attribute starting at ModAcc Measurement Offset slots from the slot boundary.""" ARBITRARY = 2 r"""The symbol boundary is detected and the measurement is performed over the number of slots expressed by the ModAcc Measurement Length attribute starting at ModAcc Measurement Offset slots from the symbol boundary.""" MARKER = 3 r"""The measurement is performed over the number of slots expressed by the ModAcc Measurement Length attribute starting at ModAcc Measurement Offset slots from the trigger. This is the fastest way to do a ModAcc measurement. This mode requires the :py:attr:`~nirfmxwcdma.attributes.AttributeID.TRIGGER_TYPE` attribute to be set to **Digital** and the trigger must occur at the start of the frame. For more information about Marker mode, refer to `Marker mode <www.ni.com/docs/en-US/bundle/rfmx-wcdma/page/marker-mode.html>`_."""
[docs] class ModAccSpectrumInverted(Enum): """ModAccSpectrumInverted.""" FALSE = 0 r"""The spectrum is not inverted.""" TRUE = 1 r"""The spectrum is inverted."""
[docs] class ModAccIQOffsetRemovalEnabled(Enum): """ModAccIQOffsetRemovalEnabled.""" FALSE = 0 r"""The I/Q offset is not removed before the ModAcc measurement.""" TRUE = 1 r"""The I/Q offset is removed before the ModAcc measurement."""
[docs] class ModAccIQGainImbalanceRemovalEnabled(Enum): """ModAccIQGainImbalanceRemovalEnabled.""" FALSE = 0 r"""The I/Q gain imbalance is not removed before the ModAcc measurement.""" TRUE = 1 r"""The I/Q gain imbalance is removed before the ModAcc measurement."""
[docs] class ModAccIQQuadratureErrorRemovalEnabled(Enum): """ModAccIQQuadratureErrorRemovalEnabled.""" FALSE = 0 r"""The I/Q quadrature error is not removed before the ModAcc measurement.""" TRUE = 1 r"""The I/Q quadrature error is removed before the ModAcc measurement."""
[docs] class ModAccTransientRemovalEnabled(Enum): """ModAccTransientRemovalEnabled.""" FALSE = 0 r"""The entire measurement interval is used to compute the RMS EVM, peak EVM, RMS magnitude error, and RMS phase error results.""" TRUE = 1 r"""The measurement excludes 25 microseconds from the start and end of each slot while computing the RMS EVM, peak EVM, RMS magnitude error, and RMS phase error results. The :py:attr:`~nirfmxwcdma.attributes.AttributeID.MODACC_SYNCHRONIZATION_MODE` attribute must be set to **Frame**, **Slot**, or **Marker**."""
[docs] class ModAccRrcFilterEnabled(Enum): """ModAccRrcFilterEnabled.""" FALSE = 0 r"""Disables the RRC filter in the measurement.""" TRUE = 1 r"""Enables the RRC filter in the measurement."""
[docs] class ModAccPeakCdeBranch(Enum): """ModAccPeakCdeBranch.""" I = 0 r"""The signal is modulated on the in-phase branch.""" Q = 1 r"""The signal is modulated on the quadrature-phase branch.""" I_AND_Q = 2 r"""The signal is complex modulated."""
[docs] class ModAccPeakActiveCdeBranch(Enum): """ModAccPeakActiveCdeBranch.""" I = 0 r"""The signal is modulated on the in-phase branch.""" Q = 1 r"""The signal is modulated on the quadrature-phase branch.""" I_AND_Q = 2 r"""The signal is complex modulated."""
[docs] class ModAccPeakRcdeBranch(Enum): """ModAccPeakRcdeBranch.""" I = 0 r"""The signal is modulated on the in-phase branch.""" Q = 1 r"""The signal is modulated on the quadrature-phase branch.""" I_AND_Q = 2 r"""The signal is complex modulated."""
[docs] class ModAccDetectedModulationType(Enum): """ModAccDetectedModulationType.""" MODULATION_TYPE_BPSK_QPSK = 0 r"""The modulation type is BPSK.""" MODULATION_TYPE_4PAM_16QAM = 1 r"""The modulation type is 4-PAM.""" MODULATION_TYPE_64QAM = 2 r"""The modulation type is 64-QAM."""
[docs] class ModAccDetectedBranch(Enum): """ModAccDetectedBranch.""" I = 0 r"""The signal is modulated on the in-phase branch.""" Q = 1 r"""The signal is modulated on the quadrature-phase branch.""" I_AND_Q = 2 r"""The signal is complex modulated."""
[docs] class AcpOffsetPowerReferenceCarrier(Enum): """AcpOffsetPowerReferenceCarrier.""" CLOSEST = 0 r"""The measurement uses the carrier power closest to the center frequency of the offset channel as the power reference.""" HIGHEST = 1 r"""The measurement uses the highest measured active carrier power as the power reference.""" COMPOSITE = 2 r"""The measurement uses total measured active carrier power as the power reference.""" SPECIFIC = 3 r"""The measurement uses the power measured in the carrier with index specified by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_OFFSET_POWER_REFERENCE_SPECIFIC` attribute as the power reference."""
[docs] class AcpRbwAutoBandwidth(Enum): """AcpRbwAutoBandwidth.""" FALSE = 0 r"""The measurement uses the RBW that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_RBW_FILTER_BANDWIDTH` attribute.""" TRUE = 1 r"""The measurement calculates the RBW."""
[docs] class AcpRbwFilterType(Enum): """AcpRbwFilterType.""" FFT_BASED = 0 r"""No RBW filtering is used.""" GAUSSIAN = 1 r"""An RBW filter with a Gaussian response is applied.""" FLAT = 2 r"""An RBW filter with a flat response is applied."""
[docs] class AcpSweepTimeAuto(Enum): """AcpSweepTimeAuto.""" FALSE = 0 r"""The measurement uses the sweep time that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_SWEEP_TIME_INTERVAL` attribute""" TRUE = 1 r"""The measurement uses a sweep time value of one slot duration."""
[docs] class AcpMeasurementMethod(Enum): """AcpMeasurementMethod.""" NORMAL = 0 r"""The ACP measurement acquires the spectrum using the same signal analyzer setting across frequency bands. Use this method when measurement speed is desirable over higher dynamic range.""" DYNAMIC_RANGE = 1 r"""The ACP measurement acquires the spectrum using the hardware-specific optimizations for different frequency bands. Use this method to get the best dynamic range. **Supported Devices**: PXIe-5665/5668R""" SEQUENTIAL_FFT = 2 r"""The ACP measurement acquires I/Q samples for a duration specified by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_SWEEP_TIME_INTERVAL` attribute. These samples are divided into smaller chunks. The size of each chunk is defined by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_SEQUENTIAL_FFT_SIZE` attribute and FFT is computed on each of these chunks. The resultant FFTs are averaged to get the spectrum and is used to compute ACP. If the total acquired samples is not an integer multiple of the FFT size, the remaining samples at the end of acquisition are not used for the measurement. Use this method to optimize ACP measurement speed. Accuracy of the results may be reduced when using this measurement method. For accurate power measurements, when the power characteristics of the signal vary over time, Averaging is allowed. The following attributes have limited support when you set the ACP Measurement Method attribute to **Sequential FFT**. +-------------------------------------------------------------------------------+---------------------+ | Property | Supported Value | +===============================================================================+=====================+ | :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_RBW_FILTER_AUTO_BANDWIDTH` | True | +-------------------------------------------------------------------------------+---------------------+ | :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_RBW_FILTER_TYPE` | FFT Based | +-------------------------------------------------------------------------------+---------------------+ | :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_AVERAGING_COUNT` | False | +-------------------------------------------------------------------------------+---------------------+ | :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_NOISE_COMPENSATION_ENABLED` | >=1 | +-------------------------------------------------------------------------------+---------------------+ | :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_NUMBER_OF_ANALYSIS_THREADS` | >=1 | +-------------------------------------------------------------------------------+---------------------+ | :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_AMPLITUDE_CORRECTION_TYPE` | RF Center Frequency | +-------------------------------------------------------------------------------+---------------------+ .. note:: For multi-span FFT, the averaging count should be 1."""
[docs] class AcpNoiseCompensationEnabled(Enum): """AcpNoiseCompensationEnabled.""" FALSE = 0 r"""Disables compensation of the channel powers for the noise floor of the signal analyzer.""" TRUE = 1 r"""Enables compensation of the channel powers for the noise floor of the signal analyzer. The noise floor of the signal analyzer is measured for the RF path used by the ACP measurement and cached for future use. If signal analyzer or measurement parameters change, noise floors are remeasured. **Supported Devices**: PXIe-5663/5665/5668, PXIe-5830/5831/5832/5842/5860"""
[docs] class AcpAveragingEnabled(Enum): """AcpAveragingEnabled.""" FALSE = 0 r"""The measurement is performed on a single acquisition.""" TRUE = 1 r"""The ACP measurement uses the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_AVERAGING_COUNT` attribute as the number of acquisitions over which the ACP measurement is averaged."""
[docs] class AcpAveragingType(Enum): """AcpAveragingType.""" RMS = 0 r"""The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations but not the noise floor.""" LOG = 1 r"""The power spectrum is averaged in a logarithmic scale.""" SCALAR = 2 r"""The square root of the power spectrum is averaged.""" MAXIMUM = 3 r"""The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.""" MINIMUM = 4 r"""The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next."""
[docs] class AcpFftOverlapMode(Enum): """AcpFftOverlapMode.""" DISABLED = 0 r"""Indicates that overlapping is not applied to the acquired samples.""" AUTOMATIC = 1 r"""Indicates that the RFmx driver automatically chooses optimal values of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_FFT_OVERLAP` attribute based on the measurement configuration."""
[docs] class AcpIFOutputPowerOffsetAuto(Enum): """AcpIFOutputPowerOffsetAuto.""" FALSE = 0 r"""The measurement sets the IF output power level offset using the values of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_NEAR_IF_OUTPUT_POWER_OFFSET` and :py:attr:`~nirfmxwcdma.attributes.AttributeID.ACP_FAR_IF_OUTPUT_POWER_OFFSET` attributes.""" TRUE = 1 r"""The measurement automatically computes an IF output power level offset for the offset channels."""
[docs] class AcpAmplitudeCorrectionType(Enum): """AcpAmplitudeCorrectionType.""" RF_CENTER_FREQUENCY = 0 r"""All the frequency bins in the spectrum are compensated with a single external attenuation value that corresponds to the RF center frequency.""" SPECTRUM_FREQUENCY_BIN = 1 r"""An individual frequency bin in the spectrum is compensated with the external attenuation value corresponding to that frequency."""
[docs] class ChpRbwAutoBandwidth(Enum): """ChpRbwAutoBandwidth.""" FALSE = 0 r"""The measurement uses the RBW that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.CHP_RBW_FILTER_BANDWIDTH` attribute.""" TRUE = 1 r"""The measurement computes the RBW."""
[docs] class ChpRbwFilterType(Enum): """ChpRbwFilterType.""" FFT_BASED = 0 r"""No RBW filtering is applied.""" GAUSSIAN = 1 r"""An RBW filter with a Gaussian response is applied.""" FLAT = 2 r"""An RBW filter with a flat response is applied."""
[docs] class ChpSweepTimeAuto(Enum): """ChpSweepTimeAuto.""" FALSE = 0 r"""The measurement uses the sweep time that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.CHP_SWEEP_TIME_INTERVAL` attribute.""" TRUE = 1 r"""The measurement uses a sweep time value of one slot duration."""
[docs] class ChpAveragingEnabled(Enum): """ChpAveragingEnabled.""" FALSE = 0 r"""The measurement is performed on a single acquisition.""" TRUE = 1 r"""The CHP measurement uses the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.CHP_AVERAGING_COUNT` attribute as the number of acquisitions over which the CHP measurement is averaged."""
[docs] class ChpAveragingType(Enum): """ChpAveragingType.""" RMS = 0 r"""The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations but not the noise floor.""" LOG = 1 r"""The power spectrum is averaged in a logarithmic scale.""" SCALAR = 2 r"""The square root of the power spectrum is averaged.""" MAXIMUM = 3 r"""The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.""" MINIMUM = 4 r"""The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next."""
[docs] class ChpAmplitudeCorrectionType(Enum): """ChpAmplitudeCorrectionType.""" RF_CENTER_FREQUENCY = 0 r"""All the frequency bins in the spectrum are compensated with a single external attenuation value that corresponds to the RF center frequency.""" SPECTRUM_FREQUENCY_BIN = 1 r"""An individual frequency bin in the spectrum is compensated with the external attenuation value corresponding to that frequency."""
[docs] class ObwRbwAutoBandwidth(Enum): """ObwRbwAutoBandwidth.""" FALSE = 0 r"""The measurement uses the RBW that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.OBW_RBW_FILTER_BANDWIDTH` attribute.""" TRUE = 1 r"""The measurement uses an RBW value of 30 kHz."""
[docs] class ObwRbwFilterType(Enum): """ObwRbwFilterType.""" FFT_BASED = 0 r"""No RBW filtering is applied.""" GAUSSIAN = 1 r"""An RBW filter with a Gaussian response is applied.""" FLAT = 2 r"""An RBW filter with a flat response is applied."""
[docs] class ObwSweepTimeAuto(Enum): """ObwSweepTimeAuto.""" FALSE = 0 r"""The measurement uses the sweep time that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.OBW_SWEEP_TIME_INTERVAL` attribute.""" TRUE = 1 r"""The measurement uses a sweep time value of one slot duration."""
[docs] class ObwAveragingEnabled(Enum): """ObwAveragingEnabled.""" FALSE = 0 r"""The measurement is performed on a single acquisition.""" TRUE = 1 r"""The OBW measurement uses the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.OBW_AVERAGING_COUNT` attribute as the number of acquisitions over which the OBW measurement is averaged."""
[docs] class ObwAveragingType(Enum): """ObwAveragingType.""" RMS = 0 r"""The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations but not the noise floor.""" LOG = 1 r"""The power spectrum is averaged in a logarithmic scale.""" SCALAR = 2 r"""The square root of the power spectrum is averaged.""" MAXIMUM = 3 r"""The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.""" MINIMUM = 4 r"""The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next."""
[docs] class ObwAmplitudeCorrectionType(Enum): """ObwAmplitudeCorrectionType.""" RF_CENTER_FREQUENCY = 0 r"""All the frequency bins in the spectrum are compensated with a single external attenuation value that corresponds to the RF center frequency.""" SPECTRUM_FREQUENCY_BIN = 1 r"""An individual frequency bin in the spectrum is compensated with the external attenuation value corresponding to that frequency."""
[docs] class SemOffsetRbwFilterType(Enum): """SemOffsetRbwFilterType.""" FFT_BASED = 0 r"""No RBW filtering is performed.""" GAUSSIAN = 1 r"""The RBW filter has a Gaussian response.""" FLAT = 2 r"""The RBW filter has a flat response.""" SYNCH_TUNED_4 = 3 r"""The RBW filter has a response of a 4-pole synchronously tuned filter.""" SYNCH_TUNED_5 = 4 r"""The RBW filter has a response of a 5-pole synchronously tuned filter."""
[docs] class SemSweepTimeAuto(Enum): """SemSweepTimeAuto.""" FALSE = 0 r"""The measurement uses the sweep time that you specify in the :py:attr:`~nirfmxwcdma.attributes.AttributeID.SEM_SWEEP_TIME_INTERVAL` attribute.""" TRUE = 1 r"""The measurement uses a sweep time value of one slot duration."""
[docs] class SemAveragingEnabled(Enum): """SemAveragingEnabled.""" FALSE = 0 r"""The measurement is performed on a single acquisition.""" TRUE = 1 r"""The SEM measurement uses the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.SEM_AVERAGING_COUNT` attribute as the number of acquisitions over which the SEM measurement is averaged."""
[docs] class SemAveragingType(Enum): """SemAveragingType.""" RMS = 0 r"""The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations but not the noise floor.""" LOG = 1 r"""The power spectrum is averaged in a logarithmic scale.""" SCALAR = 2 r"""The square root of the power spectrum is averaged.""" MAXIMUM = 3 r"""The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.""" MINIMUM = 4 r"""The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next."""
[docs] class SemAmplitudeCorrectionType(Enum): """SemAmplitudeCorrectionType.""" RF_CENTER_FREQUENCY = 0 r"""All the frequency bins in the spectrum are compensated with a single external attenuation value that corresponds to the RF center frequency.""" SPECTRUM_FREQUENCY_BIN = 1 r"""An individual frequency bin in the spectrum is compensated with the external attenuation value corresponding to that frequency."""
[docs] class SemMeasurementStatus(Enum): """SemMeasurementStatus.""" FAIL = 0 r"""The measurement status of at least one offset segment has failed.""" PASS = 1 r"""The measurement status of all offset segments have passed."""
[docs] class SemLowerOffsetMeasurementStatus(Enum): """SemLowerOffsetMeasurementStatus.""" FAIL = 0 r"""Indicates that the value of the SEM Results Lower Offset Margin attribute is positive.""" PASS = 1 r"""Indicates that the value of the SEM Results Lower Offset Margin attribute is zero or negative."""
[docs] class SemUpperOffsetMeasurementStatus(Enum): """SemUpperOffsetMeasurementStatus.""" FAIL = 0 r"""The value of the SEM Results Upper Offset Margin attribute is positive.""" PASS = 1 r"""The value of the SEM Results Upper Offset Margin attribute is zero or negative."""
[docs] class QevmAveragingEnabled(Enum): """QevmAveragingEnabled.""" FALSE = 0 r"""The measurement is performed on a single acquisition.""" TRUE = 1 r"""The QEVM measurement uses the value of the :py:attr:`~nirfmxwcdma.attributes.AttributeID.QEVM_AVERAGING_COUNT` attribute as the number of acquisitions over which the QEVM measurement is averaged."""
[docs] class QevmSpectrumInverted(Enum): """QevmSpectrumInverted.""" FALSE = 0 r"""The spectrum is not inverted.""" TRUE = 1 r"""The spectrum is inverted."""
[docs] class QevmIQOffsetRemovalEnabled(Enum): """QevmIQOffsetRemovalEnabled.""" FALSE = 0 r"""The I/Q offset is not removed before the QEVM measurement.""" TRUE = 1 r"""The I/Q offset is removed before the QEVM measurement."""
[docs] class QevmRrcFilterEnabled(Enum): """QevmRrcFilterEnabled.""" FALSE = 0 r"""Disables the RRC filter in the measurement.""" TRUE = 1 r"""Enables the RRC filter in the measurement."""
[docs] class SlotPhaseSynchronizationMode(Enum): """SlotPhaseSynchronizationMode.""" FRAME = 0 r"""The frame boundary is detected, and the measurement is performed over the number of slots expressed by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.SLOTPHASE_MEASUREMENT_LENGTH` attribute starting at :py:attr:`~nirfmxwcdma.attributes.AttributeID.SLOTPHASE_MEASUREMENT_OFFSET` slots from the frame boundary.""" SLOT = 1 r"""The slot boundary is detected and the measurement is performed over the number of slots expressed by the SlotPhase Meas Length attribute starting at SlotPhase Meas Offset slots from the slot boundary."""
[docs] class SlotPhaseSpectrumInverted(Enum): """SlotPhaseSpectrumInverted.""" FALSE = 0 r"""The spectrum is not inverted.""" TRUE = 1 r"""The spectrum is inverted."""
[docs] class SlotPhaseTransientRemovalEnabled(Enum): """SlotPhaseTransientRemovalEnabled.""" FALSE = 0 r"""The measurement considers an entire slot for the chip phase error linear-fit calculation, which is used to compute the phase discontinuity at the slot boundaries.""" TRUE = 1 r"""The measurement considers each slot excluding 25 microseconds at the start and end of the slot, for the chip phase error linear-fit line calculation, which is extrapolated to compute the phase discontinuity at the slot boundaries."""
[docs] class SlotPhaseRrcFilterEnabled(Enum): """SlotPhaseRrcFilterEnabled.""" FALSE = 0 r"""Disables the RRC filter in the measurement.""" TRUE = 1 r"""Enables the RRC filter in the measurement."""
[docs] class CdaSynchronizationMode(Enum): """CdaSynchronizationMode.""" FRAME = 0 r"""The frame boundary is detected and the measurement is performed over the number of slots expressed by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.CDA_MEASUREMENT_LENGTH` attribute, starting at :py:attr:`~nirfmxwcdma.attributes.AttributeID.CDA_MEASUREMENT_OFFSET` slots from the frame boundary.""" SLOT = 1 r"""The slot boundary is detected and the measurement is performed over the number of slots expressed by CDA Meas Length attribute, starting at CDA Meas Offset slots from the slot boundary.""" ARBITRARY = 2 r"""The symbol boundary is detected and the measurement is performed over the number of slots expressed by the CDA Meas Length attribute, starting at CDA Meas Offset slots from the symbol boundary."""
[docs] class CdaMeasurementChannelModulationType(Enum): """CdaMeasurementChannelModulationType.""" MODULATION_TYPE_BPSK_QPSK = 0 r"""The modulation type is BPSK.""" MODULATION_TYPE_4PAM_16QAM = 1 r"""The modulation type is 4-PAM."""
[docs] class CdaMeasurementChannelBranch(Enum): """CdaMeasurementChannelBranch.""" I = 0 r"""The signal is modulated on the in-phase branch.""" Q = 1 r"""The signal is modulated on the quadrature-phase branch."""
[docs] class CdaPowerUnit(Enum): """CdaPowerUnit.""" DB = 0 r"""Specifies the power relative to the total power.""" DBM = 1 r"""Specifies the absolute power measured."""
[docs] class CdaSpectrumInverted(Enum): """CdaSpectrumInverted.""" FALSE = 0 r"""The spectrum is not inverted.""" TRUE = 1 r"""The spectrum is inverted."""
[docs] class CdaIQOffsetRemovalEnabled(Enum): """CdaIQOffsetRemovalEnabled.""" FALSE = 0 r"""The I/Q offset is not removed before the CDA measurement.""" TRUE = 1 r"""The I/Q offset is removed before the CDA measurement."""
[docs] class CdaRrcFilterEnabled(Enum): """CdaRrcFilterEnabled.""" FALSE = 0 r"""Disables the RRC filter in the measurement.""" TRUE = 1 r"""Enables the RRC filter in the measurement."""
[docs] class SlotPowerSynchronizationMode(Enum): """SlotPowerSynchronizationMode.""" FRAME = 0 r"""The frame boundary is detected, and the measurement is performed over the number of slots expressed by the :py:attr:`~nirfmxwcdma.attributes.AttributeID.SLOTPOWER_MEASUREMENT_LENGTH` attribute starting at :py:attr:`~nirfmxwcdma.attributes.AttributeID.SLOTPOWER_MEASUREMENT_OFFSET` slots from the frame boundary.""" SLOT = 1 r"""The slot boundary is detected, and the measurement is performed over the number of slots expressed by the SlotPower Measurement Length attribute starting at SlotPower Measurement Offset slots from the slot boundary."""
[docs] class SlotPowerSpectrumInverted(Enum): """SlotPowerSpectrumInverted.""" FALSE = 0 r"""The spectrum is not inverted.""" TRUE = 1 r"""The spectrum is inverted."""
[docs] class SlotPowerRrcFilterEnabled(Enum): """SlotPowerRrcFilterEnabled.""" FALSE = 0 r"""Disables the RRC filter in the measurement.""" TRUE = 1 r"""Enables the RRC filter in the measurement."""
[docs] class TransmitterArchitecture(Enum): """TransmitterArchitecture.""" LO_PER_CARRIER = 0 r"""Specifies that the transmitter has one LO at the center of each carrier. The :py:attr:`~nirfmxwcdma.attributes.AttributeID.MODACC_RESULTS_IQ_ORIGIN_OFFSET` result is an estimate of the I/Q origin offset of each carrier.""" LO_PER_BAND = 1 r"""Specifies that the transmitter has one LO at the center of all the carriers in the band. The Multicarrier IQ Origin Offset result is an estimate of the I/Q origin offset for the LO per Band architecture."""
[docs] class LimitedConfigurationChange(Enum): """LimitedConfigurationChange.""" DISABLED = 0 r"""This is the normal mode of RFmx operation. All configuration changes in RFmxInstr attributes or in personality attributes will be applied during RFmx Commit.""" NO_CHANGE = 1 r"""Signal configuration is locked after the first Commit of the named signal configuration. Any configuration change thereafter either in RFmxInstr attributes or personality attributes will not be considered by subsequent RFmx Commits or Initiates of this signal. Use **No Change** if you have created named signal configurations for all measurement configurations but are setting some RFmxInstr attributes. Refer to the Limitations of the Limited Configuration Change Property topic for more details about the limitations of using this mode.""" FREQUENCY = 2 r"""Signal configuration, other than center frequency and external attenuation, is locked after first Commit of the named signal configuration. Thereafter, only the :py:attr:`~nirfmxwcdma.attributes.AttributeID.CENTER_FREQUENCY` and :py:attr:`~nirfmxwcdma.attributes.AttributeID.EXTERNAL_ATTENUATION` attribute value changes will be considered by subsequent driver Commits or Initiates of this signal. Refer to the Limitations of the Limited Configuration Change Property topic for more details about the limitations of using this mode.""" REFERENCE_LEVEL = 3 r"""Signal configuration, other than the reference level, is locked after first Commit of the named signal configuration. Thereafter only the :py:attr:`~nirfmxwcdma.attributes.AttributeID.REFERENCE_LEVEL` attribute value change will be considered by subsequent driver Commits or Initiates of this signal. If you have configured this signal to use an IQ Power Edge Trigger, NI recommends that you set the :py:attr:`~nirfmxwcdma.attributes.AttributeID.IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE` to **Relative** so that the trigger level is automatically adjusted as you adjust the reference level. Refer to the Limitations of the Limited Configuration Change Property topic for more details about the limitations of using this mode.""" FREQUENCY_AND_REFERENCE_LEVEL = 4 r"""Signal configuration, other than center frequency, reference level, and external attenuation, is locked after first Commit of the named signal configuration. Thereafter only the Center Frequency, Reference Level, and External Attenuation attribute value changes will be considered by subsequent driver Commits or Initiates of this signal. If you have configured this signal to use an IQ Power Edge Trigger, NI recommends that you set the IQ Power Edge Level Type to **Relative** so that the trigger level is automatically adjusted as you adjust the reference level. Refer to the Limitations of the Limited Configuration Change Property topic for more details about the limitations of using this mode.""" SELECTED_PORTS_FREQUENCY_AND_REFERENCE_LEVEL = 5 r"""Signal configuration, other than selected ports, center frequency, reference level, external attenuation, and RFInstr configuration, is locked after first Commit or Initiate of the named signal configuration. Thereafter only Selected Ports, Center Frequency, Reference Level, and External Attenuation attribute value changes will be considered by subsequent driver Commits or Initiates of this signal. If you have configured this signal to use an IQ Power Edge Trigger, NI recommends you set the IQ Power Edge Level Type to **Relative** so that the trigger level is automatically adjusted as you adjust the reference level. Refer to the Limitations of the Limited Configuration Change Property topic for more details about the limitations of using this mode."""
[docs] class MeasurementTypes(IntFlag): """MeasurementTypes.""" MODACC = 1 << 0 r"""Selects MODACC measurement.""" ACP = 1 << 1 r"""Selects ACP measurement.""" CHP = 1 << 2 r"""Selects CHP measurement.""" OBW = 1 << 3 r"""Selects OBW measurement.""" SEM = 1 << 4 r"""Selects SEM measurement.""" QEVM = 1 << 5 r"""Selects QEVM measurement.""" SLOTPHASE = 1 << 6 r"""Selects SLOTPHASE measurement.""" CDA = 1 << 7 r"""Selects CDA measurement.""" SLOTPOWER = 1 << 8 r"""Selects SLOTPOWER measurement."""