diff --git a/CHANGELOG.md b/CHANGELOG.md index c1c60602..635b958c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,7 @@ Things to be included in the next release go here. - Added the `get_errors()` method to the `Device` class to enable easy access to the current error code and messages on any device. - Added more details to the Architectural Overview page of the documentation as well as highlighting to the device driver diagram on the page. - Added regex matching to the `verify_values()` helper function to allow for more flexible value verification. +- Full Python API support for MDO3 model. ### Changed diff --git a/README.md b/README.md index 0fb7d296..12877e88 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@
-| | | -| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Testing** | [![Code testing status](https://github.com/tektronix/tm_devices/actions/workflows/test-code.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/test-code.yml) [![Docs testing status](https://github.com/tektronix/tm_devices/actions/workflows/test-docs.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/test-docs.yml) [![Coverage status](https://codecov.io/gh/tektronix/tm_devices/branch/main/graph/badge.svg)](https://codecov.io/gh/tektronix/tm_devices) | -| **Code Quality** | [![CodeQL status](https://github.com/tektronix/tm_devices/actions/workflows/codeql-analysis.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/codeql-analysis.yml) [![CodeFactor grade](https://www.codefactor.io/repository/github/tektronix/tm_devices/badge)](https://www.codefactor.io/repository/github/tektronix/tm_devices) [![pre-commit status](https://results.pre-commit.ci/badge/github/tektronix/tm_devices/main.svg)](https://results.pre-commit.ci/latest/github/tektronix/tm_devices/main) | -| **Package** | [![PyPI: Package status](https://img.shields.io/pypi/status/tm_devices?logo=pypi)](https://pypi.org/project/tm_devices/) [![PyPI: Latest release version](https://img.shields.io/pypi/v/tm_devices?logo=pypi)](https://pypi.org/project/tm_devices/) [![PyPI: Supported Python versions](https://img.shields.io/pypi/pyversions/tm_devices?logo=python)](https://pypi.org/project/tm_devices/) [![PyPI: Downloads](https://pepy.tech/badge/tm-devices)](https://pepy.tech/project/tm_devices) [![License: Apache 2.0](https://img.shields.io/pypi/l/tm_devices)](https://github.com/tektronix/tm_devices/blob/main/LICENSE.md) [![Package build status](https://github.com/tektronix/tm_devices/actions/workflows/package-build.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/package-build.yml) [![PyPI upload status](https://github.com/tektronix/tm_devices/actions/workflows/package-release.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/package-release.yml) | -| **Documentation** | [![ReadtheDocs Status](https://img.shields.io/readthedocs/tm-devices/stable?logo=readthedocs)](https://tm-devices.readthedocs.io/stable) | -| **Code Style** | [![Test style: pytest](https://img.shields.io/badge/test%20style-pytest-blue)](https://github.com/pytest-dev/pytest) [![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-black)](https://docs.astral.sh/ruff/formatter/) [![Docstring style: google](https://img.shields.io/badge/docstring%20style-google-tan)](https://google.github.io/styleguide/pyguide.html) | -| **Linting** | [![pre-commit enabled](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit) [![Docstring formatter: docformatter](https://img.shields.io/badge/docstring%20formatter-docformatter-tan)](https://github.com/PyCQA/docformatter) [![Type Checker: pyright](https://img.shields.io/badge/type%20checker-pyright-yellowgreen)](https://github.com/RobertCraigie/pyright-python) [![Linter: pylint](https://img.shields.io/badge/linter-pylint-purple)](https://github.com/pylint-dev/pylint) [![Linter: Ruff](https://img.shields.io/badge/linter-ruff-purple)](https://github.com/charliermarsh/ruff) | +| | | +| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Testing** | [![Code testing status](https://github.com/tektronix/tm_devices/actions/workflows/test-code.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/test-code.yml) [![Docs testing status](https://github.com/tektronix/tm_devices/actions/workflows/test-docs.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/test-docs.yml) [![Coverage status](https://codecov.io/gh/tektronix/tm_devices/branch/main/graph/badge.svg)](https://codecov.io/gh/tektronix/tm_devices) | +| **Code Quality** | [![CodeQL status](https://github.com/tektronix/tm_devices/actions/workflows/codeql-analysis.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/codeql-analysis.yml) [![CodeFactor grade](https://www.codefactor.io/repository/github/tektronix/tm_devices/badge)](https://www.codefactor.io/repository/github/tektronix/tm_devices) [![pre-commit status](https://results.pre-commit.ci/badge/github/tektronix/tm_devices/main.svg)](https://results.pre-commit.ci/latest/github/tektronix/tm_devices/main) | +| **Package** | [![PyPI: Package status](https://img.shields.io/pypi/status/tm_devices?logo=pypi)](https://pypi.org/project/tm_devices/) [![PyPI: Latest release version](https://img.shields.io/pypi/v/tm_devices?logo=pypi)](https://pypi.org/project/tm_devices/) [![PyPI: Supported Python versions](https://img.shields.io/pypi/pyversions/tm_devices?logo=python)](https://pypi.org/project/tm_devices/) [![PyPI: Downloads](https://static.pepy.tech/badge/tm-devices)](https://pepy.tech/project/tm_devices) [![License: Apache 2.0](https://img.shields.io/pypi/l/tm_devices)](https://github.com/tektronix/tm_devices/blob/main/LICENSE.md) [![Package build status](https://github.com/tektronix/tm_devices/actions/workflows/package-build.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/package-build.yml) [![PyPI upload status](https://github.com/tektronix/tm_devices/actions/workflows/package-release.yml/badge.svg?branch=main)](https://github.com/tektronix/tm_devices/actions/workflows/package-release.yml) | +| **Documentation** | [![ReadtheDocs Status](https://img.shields.io/readthedocs/tm-devices/stable?logo=readthedocs)](https://tm-devices.readthedocs.io/stable) | +| **Code Style** | [![Test style: pytest](https://img.shields.io/badge/test%20style-pytest-blue)](https://github.com/pytest-dev/pytest) [![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-black)](https://docs.astral.sh/ruff/formatter/) [![Docstring style: google](https://img.shields.io/badge/docstring%20style-google-tan)](https://google.github.io/styleguide/pyguide.html) | +| **Linting** | [![pre-commit enabled](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit) [![Docstring formatter: docformatter](https://img.shields.io/badge/docstring%20formatter-docformatter-tan)](https://github.com/PyCQA/docformatter) [![Type Checker: pyright](https://img.shields.io/badge/type%20checker-pyright-yellowgreen)](https://github.com/RobertCraigie/pyright-python) [![Linter: pylint](https://img.shields.io/badge/linter-pylint-purple)](https://github.com/pylint-dev/pylint) [![Linter: Ruff](https://img.shields.io/badge/linter-ruff-purple)](https://github.com/charliermarsh/ruff) |
@@ -88,7 +88,7 @@ _Device Support Levels_ | | **AWG7000** | PI | ✅ | ✅ | | | **AWG70000** | PI | ✅ | ✅ | | Scopes | **2 Series MSO** | PI | ✅ | ✅ | -| | **3 Series MDO** | PI | ✅ | | +| | **3 Series MDO** | PI | ✅ | ✅ | | | **4 Series MSO** | PI | ✅ | ✅ | | | **4 Series B MSO** | PI | ✅ | ✅ | | | **5 Series MSO** | PI | ✅ | ✅ | diff --git a/src/tm_devices/commands/dpo2k_commands.py b/src/tm_devices/commands/dpo2k_commands.py index 1ff2c317..4c33b143 100644 --- a/src/tm_devices/commands/dpo2k_commands.py +++ b/src/tm_devices/commands/dpo2k_commands.py @@ -48,7 +48,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -56,6 +55,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .gen_u301s_msodpo.acquire import Acquire diff --git a/src/tm_devices/commands/dpo2kb_commands.py b/src/tm_devices/commands/dpo2kb_commands.py index 1cbff936..c1426e6b 100644 --- a/src/tm_devices/commands/dpo2kb_commands.py +++ b/src/tm_devices/commands/dpo2kb_commands.py @@ -48,7 +48,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -56,6 +55,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .gen_u301s_msodpo.acquire import Acquire diff --git a/src/tm_devices/commands/dpo4k_commands.py b/src/tm_devices/commands/dpo4k_commands.py index ca96e743..3c9ebdbe 100644 --- a/src/tm_devices/commands/dpo4k_commands.py +++ b/src/tm_devices/commands/dpo4k_commands.py @@ -22,7 +22,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -35,16 +34,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -52,16 +48,20 @@ from .gen_1ltpwt_mdomsodpo.wfmoutpre import Wfmoutpre from .gen_1ltpwt_mdomsodpo.zoom import Zoom from .gen_1lwj1r_msomdodpo.rosc import Rosc +from .gen_1lxxm9_msomdodpo.bus import Bus from .gen_1lxxm9_msomdodpo.cursor import Cursor from .gen_1mlt9u_mdomsodpo.acquire import Acquire from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1mq0z9_msodpo.rf import Rf +from .gen_1msu49_msodpo.mark import Mark from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog from .gen_1nmc1o_msodpomdo.language import Language @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory @@ -212,7 +212,6 @@ class DPO4KCommandConstants: CMOS_2_5V = "CMOS_2_5V" CMOS_3_3V = "CMOS_3_3V" CMOS_5_0V = "CMOS_5_0V" - COLUMN = "COLUMN" COMMAND = "COMMAND" COPYACTIVE = "COPYACTIVE" # COPYACTive CPU = "CPU" @@ -2085,8 +2084,6 @@ def mark(self) -> Mark: - ``PREVious`` moves to the next reference mark on the left. Sub-properties: - - ``.create``: The ``MARK:CREATE`` command. - - ``.delete``: The ``MARK:DELEte`` command. - ``.free``: The ``MARK:FREE`` command. - ``.saveall``: The ``MARK:SAVEALL`` command. - ``.selected``: The ``MARK:SELected`` command tree. diff --git a/src/tm_devices/commands/dpo4kb_commands.py b/src/tm_devices/commands/dpo4kb_commands.py index 8bcc5f6f..3881e271 100644 --- a/src/tm_devices/commands/dpo4kb_commands.py +++ b/src/tm_devices/commands/dpo4kb_commands.py @@ -22,7 +22,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -35,16 +34,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -52,16 +48,20 @@ from .gen_1ltpwt_mdomsodpo.wfmoutpre import Wfmoutpre from .gen_1ltpwt_mdomsodpo.zoom import Zoom from .gen_1lwj1r_msomdodpo.rosc import Rosc +from .gen_1lxxm9_msomdodpo.bus import Bus from .gen_1lxxm9_msomdodpo.cursor import Cursor from .gen_1mlt9u_mdomsodpo.acquire import Acquire from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1mq0z9_msodpo.rf import Rf +from .gen_1msu49_msodpo.mark import Mark from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog from .gen_1nmc1o_msodpomdo.language import Language @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory @@ -212,7 +212,6 @@ class DPO4KBCommandConstants: CMOS_2_5V = "CMOS_2_5V" CMOS_3_3V = "CMOS_3_3V" CMOS_5_0V = "CMOS_5_0V" - COLUMN = "COLUMN" COMMAND = "COMMAND" COPYACTIVE = "COPYACTIVE" # COPYACTive CPU = "CPU" @@ -2093,8 +2092,6 @@ def mark(self) -> Mark: - ``PREVious`` moves to the next reference mark on the left. Sub-properties: - - ``.create``: The ``MARK:CREATE`` command. - - ``.delete``: The ``MARK:DELEte`` command. - ``.free``: The ``MARK:FREE`` command. - ``.saveall``: The ``MARK:SAVEALL`` command. - ``.selected``: The ``MARK:SELected`` command tree. diff --git a/src/tm_devices/commands/dpo5k_commands.py b/src/tm_devices/commands/dpo5k_commands.py index 39e15d28..09b20749 100644 --- a/src/tm_devices/commands/dpo5k_commands.py +++ b/src/tm_devices/commands/dpo5k_commands.py @@ -106,7 +106,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -114,6 +113,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo5kb_commands.py b/src/tm_devices/commands/dpo5kb_commands.py index 475ee3f2..89943087 100644 --- a/src/tm_devices/commands/dpo5kb_commands.py +++ b/src/tm_devices/commands/dpo5kb_commands.py @@ -108,7 +108,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -116,6 +115,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo70kc_commands.py b/src/tm_devices/commands/dpo70kc_commands.py index 913b6ded..dd5683db 100644 --- a/src/tm_devices/commands/dpo70kc_commands.py +++ b/src/tm_devices/commands/dpo70kc_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo70kd_commands.py b/src/tm_devices/commands/dpo70kd_commands.py index 9bf0e657..66dacf09 100644 --- a/src/tm_devices/commands/dpo70kd_commands.py +++ b/src/tm_devices/commands/dpo70kd_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo70kdx_commands.py b/src/tm_devices/commands/dpo70kdx_commands.py index a0513235..1a220ea0 100644 --- a/src/tm_devices/commands/dpo70kdx_commands.py +++ b/src/tm_devices/commands/dpo70kdx_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo70ksx_commands.py b/src/tm_devices/commands/dpo70ksx_commands.py index 783d72e8..2e446b1f 100644 --- a/src/tm_devices/commands/dpo70ksx_commands.py +++ b/src/tm_devices/commands/dpo70ksx_commands.py @@ -109,7 +109,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -117,6 +116,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo7k_commands.py b/src/tm_devices/commands/dpo7k_commands.py index d0b4de54..249de640 100644 --- a/src/tm_devices/commands/dpo7k_commands.py +++ b/src/tm_devices/commands/dpo7k_commands.py @@ -106,7 +106,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -114,6 +113,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dpo7kc_commands.py b/src/tm_devices/commands/dpo7kc_commands.py index e9c2b100..76bb8721 100644 --- a/src/tm_devices/commands/dpo7kc_commands.py +++ b/src/tm_devices/commands/dpo7kc_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dsa70kc_commands.py b/src/tm_devices/commands/dsa70kc_commands.py index 8a8870f0..2ff1a96c 100644 --- a/src/tm_devices/commands/dsa70kc_commands.py +++ b/src/tm_devices/commands/dsa70kc_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/dsa70kd_commands.py b/src/tm_devices/commands/dsa70kd_commands.py index 2a581422..293b9c07 100644 --- a/src/tm_devices/commands/dsa70kd_commands.py +++ b/src/tm_devices/commands/dsa70kd_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/gen_163n04_mdo/mark.py b/src/tm_devices/commands/gen_163n04_mdo/mark.py new file mode 100644 index 00000000..2b8ca007 --- /dev/null +++ b/src/tm_devices/commands/gen_163n04_mdo/mark.py @@ -0,0 +1,713 @@ +# pylint: disable=line-too-long +"""The mark commands module. + +These commands are used in the following models: +MDO4K + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MARK {NEXT|PREVious} + - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:FREE? + - MARK:SAVEALL TOUSER + - MARK:SELected:END? + - MARK:SELected:FOCUS? + - MARK:SELected:MARKSINCOLumn? + - MARK:SELected:OWNer? + - MARK:SELected:SOURCe? + - MARK:SELected:STARt? + - MARK:SELected:STATE? + - MARK:SELected:ZOOm:POSition? + - MARK:TOTal? + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + - MARK? + ``` +""" # noqa: E501 + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class MarkUserlist(SCPICmdWrite, SCPICmdRead): + """The ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the command + form if any of the following conditions are true: The source waveform is not turned on. + The position of the mark is not on the waveform. The maximum number of marks would be + exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + + +class MarkTotal(SCPICmdRead): + """The ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + + +class MarkSelectedZoomPosition(SCPICmdRead): + """The ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + + +class MarkSelectedZoom(SCPICmdRead): + """The ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = MarkSelectedZoomPosition(device, f"{self._cmd_syntax}:POSition") + + @property + def position(self) -> MarkSelectedZoomPosition: + """Return the ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + return self._position + + +class MarkSelectedState(SCPICmdRead): + """The ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + + +class MarkSelectedStart(SCPICmdRead): + """The ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + + +class MarkSelectedSource(SCPICmdRead): + """The ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + + +class MarkSelectedOwner(SCPICmdRead): + """The ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + + +class MarkSelectedMarksincolumn(SCPICmdRead): + """The ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + + +class MarkSelectedFocus(SCPICmdRead): + """The ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + + +class MarkSelectedEnd(SCPICmdRead): + """The ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class MarkSelected(SCPICmdRead): + """The ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._end = MarkSelectedEnd(device, f"{self._cmd_syntax}:END") + self._focus = MarkSelectedFocus(device, f"{self._cmd_syntax}:FOCUS") + self._marksincolumn = MarkSelectedMarksincolumn(device, f"{self._cmd_syntax}:MARKSINCOLumn") + self._owner = MarkSelectedOwner(device, f"{self._cmd_syntax}:OWNer") + self._source = MarkSelectedSource(device, f"{self._cmd_syntax}:SOURCe") + self._start = MarkSelectedStart(device, f"{self._cmd_syntax}:STARt") + self._state = MarkSelectedState(device, f"{self._cmd_syntax}:STATE") + self._zoom = MarkSelectedZoom(device, f"{self._cmd_syntax}:ZOOm") + + @property + def end(self) -> MarkSelectedEnd: + """Return the ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + return self._end + + @property + def focus(self) -> MarkSelectedFocus: + """Return the ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + return self._focus + + @property + def marksincolumn(self) -> MarkSelectedMarksincolumn: + """Return the ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + return self._marksincolumn + + @property + def owner(self) -> MarkSelectedOwner: + """Return the ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + return self._owner + + @property + def source(self) -> MarkSelectedSource: + """Return the ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + return self._source + + @property + def start(self) -> MarkSelectedStart: + """Return the ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + return self._start + + @property + def state(self) -> MarkSelectedState: + """Return the ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + return self._state + + @property + def zoom(self) -> MarkSelectedZoom: + """Return the ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + return self._zoom + + +class MarkSaveall(SCPICmdWrite): + """The ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user search + mark list in internal memory. (This is equivalent to pressing the 'Save All Marks' button + in the Search button menu on the front panel.) In order to retrieve the information, use + the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + + +class MarkFree(SCPICmdRead): + """The ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + + +class MarkDelete(SCPICmdWrite): + """The ``MARK:DELEte`` command. + + Description: + - This command deletes a mark on a particular waveform, all waveforms in a column, the + selected mark, or all marks. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:DELEte value`` command. + + SCPI Syntax: + ``` + - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` deletes the mark on a channel waveform, where is the channel number. + - ``MATH`` deletes the mark on the math waveform. + - ``B`` deletes the mark on a bus waveform, where . + - ``REF`` deletes the mark on a reference waveform, where is the reference waveform + number. + - ``DIGital`` deletes all marks on all digital channels. (MSO/MDO4000/B models only as well + as MDO3000 and MDO400C models with option MDO3MSO or MDO4MSO installed.). + - ``RF_AMPlitude`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_FREQuency`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_PHASe`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``COLUMN`` deletes marks on all waveforms in the current zoom pixel column. + """ # noqa: E501 + + +class Mark(SCPICmdWrite, SCPICmdRead): + """The ``MARK`` command. + + Description: + - Moves to the next or previous reference mark on the waveform. Returns the current mark + position. + + Usage: + - Using the ``.query()`` method will send the ``MARK?`` query. + - Using the ``.verify(value)`` method will send the ``MARK?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK value`` command. + + SCPI Syntax: + ``` + - MARK {NEXT|PREVious} + - MARK? + ``` + + Info: + - ``NEXT`` moves to the next reference mark on the right. + - ``PREVious`` moves to the next reference mark on the left. + + Properties: + - ``.delete``: The ``MARK:DELEte`` command. + - ``.free``: The ``MARK:FREE`` command. + - ``.saveall``: The ``MARK:SAVEALL`` command. + - ``.selected``: The ``MARK:SELected`` command tree. + - ``.total``: The ``MARK:TOTal`` command. + - ``.userlist``: The ``MARK:USERLIST`` command. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "MARK") -> None: + super().__init__(device, cmd_syntax) + self._delete = MarkDelete(device, f"{self._cmd_syntax}:DELEte") + self._free = MarkFree(device, f"{self._cmd_syntax}:FREE") + self._saveall = MarkSaveall(device, f"{self._cmd_syntax}:SAVEALL") + self._selected = MarkSelected(device, f"{self._cmd_syntax}:SELected") + self._total = MarkTotal(device, f"{self._cmd_syntax}:TOTal") + self._userlist = MarkUserlist(device, f"{self._cmd_syntax}:USERLIST") + + @property + def delete(self) -> MarkDelete: + """Return the ``MARK:DELEte`` command. + + Description: + - This command deletes a mark on a particular waveform, all waveforms in a column, the + selected mark, or all marks. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:DELEte value`` command. + + SCPI Syntax: + ``` + - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` deletes the mark on a channel waveform, where is the channel number. + - ``MATH`` deletes the mark on the math waveform. + - ``B`` deletes the mark on a bus waveform, where . + - ``REF`` deletes the mark on a reference waveform, where is the reference + waveform number. + - ``DIGital`` deletes all marks on all digital channels. (MSO/MDO4000/B models only as + well as MDO3000 and MDO400C models with option MDO3MSO or MDO4MSO installed.). + - ``RF_AMPlitude`` deletes the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` deletes the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_PHASe`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``COLUMN`` deletes marks on all waveforms in the current zoom pixel column. + """ # noqa: E501 + return self._delete + + @property + def free(self) -> MarkFree: + """Return the ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + return self._free + + @property + def saveall(self) -> MarkSaveall: + """Return the ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user + search mark list in internal memory. (This is equivalent to pressing the 'Save All + Marks' button in the Search button menu on the front panel.) In order to retrieve the + information, use the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + return self._saveall + + @property + def selected(self) -> MarkSelected: + """Return the ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + return self._selected + + @property + def total(self) -> MarkTotal: + """Return the ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + return self._total + + @property + def userlist(self) -> MarkUserlist: + """Return the ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the + command form if any of the following conditions are true: The source waveform is not + turned on. The position of the mark is not on the waveform. The maximum number of + marks would be exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + return self._userlist diff --git a/src/tm_devices/commands/gen_163n04_mdo/search.py b/src/tm_devices/commands/gen_163n04_mdo/search.py index 0d2afaec..53314091 100644 --- a/src/tm_devices/commands/gen_163n04_mdo/search.py +++ b/src/tm_devices/commands/gen_163n04_mdo/search.py @@ -1035,9 +1035,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -1215,9 +1215,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -1314,8 +1314,14 @@ class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): - ``MATH`` specifies to use the math waveform as the as the source waveform. - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + - ``D`` specifies to use one of the digital channels as the source waveform. + (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with option MDO3MSO or + MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_PHASe`` specify an RF time domain trace as the source. (MDO4000/B/C models only.). """ # noqa: E501 @@ -1430,7 +1436,14 @@ def source(self) -> SearchSearchItemTriggerATimeoutSource: - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source waveform. x has a minimum of 1 and a maximum of 4. - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with option MDO3MSO + or MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_PHASe`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). """ # noqa: E501 return self._source @@ -1776,13 +1789,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1797,8 +1808,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1839,13 +1849,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1938,6 +1946,12 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. (MDO4000/B/C + only.). """ # noqa: E501 @@ -2055,6 +2069,12 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -2149,8 +2169,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -2321,11 +2340,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2442,11 +2459,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2575,9 +2590,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2752,9 +2767,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -4582,6 +4597,9 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 @@ -4698,6 +4716,11 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -5613,13 +5636,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -5724,13 +5744,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -15288,7 +15305,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search number, which - is always 1, and B is the bus number (1-2). + is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and 1-2 for the + MDO3000. Usage: - Using the ``.query()`` method will send the @@ -15483,7 +15501,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search - number, which is always 1, and B is the bus number (1-2). + number, which is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and + 1-2 for the MDO3000. Usage: - Using the ``.query()`` method will send the diff --git a/src/tm_devices/commands/gen_16opiv_mdomso/__init__.py b/src/tm_devices/commands/gen_16opiv_mdomso/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_16opiv_mdomso/mark.py b/src/tm_devices/commands/gen_16opiv_mdomso/mark.py new file mode 100644 index 00000000..300a3c65 --- /dev/null +++ b/src/tm_devices/commands/gen_16opiv_mdomso/mark.py @@ -0,0 +1,713 @@ +# pylint: disable=line-too-long +"""The mark commands module. + +These commands are used in the following models: +MDO3K, MSO4KB + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MARK {NEXT|PREVious} + - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:FREE? + - MARK:SAVEALL TOUSER + - MARK:SELected:END? + - MARK:SELected:FOCUS? + - MARK:SELected:MARKSINCOLumn? + - MARK:SELected:OWNer? + - MARK:SELected:SOURCe? + - MARK:SELected:STARt? + - MARK:SELected:STATE? + - MARK:SELected:ZOOm:POSition? + - MARK:TOTal? + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + - MARK? + ``` +""" # noqa: E501 + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class MarkUserlist(SCPICmdWrite, SCPICmdRead): + """The ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the command + form if any of the following conditions are true: The source waveform is not turned on. + The position of the mark is not on the waveform. The maximum number of marks would be + exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + + +class MarkTotal(SCPICmdRead): + """The ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + + +class MarkSelectedZoomPosition(SCPICmdRead): + """The ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + + +class MarkSelectedZoom(SCPICmdRead): + """The ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = MarkSelectedZoomPosition(device, f"{self._cmd_syntax}:POSition") + + @property + def position(self) -> MarkSelectedZoomPosition: + """Return the ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + return self._position + + +class MarkSelectedState(SCPICmdRead): + """The ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + + +class MarkSelectedStart(SCPICmdRead): + """The ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + + +class MarkSelectedSource(SCPICmdRead): + """The ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + + +class MarkSelectedOwner(SCPICmdRead): + """The ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + + +class MarkSelectedMarksincolumn(SCPICmdRead): + """The ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + + +class MarkSelectedFocus(SCPICmdRead): + """The ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + + +class MarkSelectedEnd(SCPICmdRead): + """The ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class MarkSelected(SCPICmdRead): + """The ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._end = MarkSelectedEnd(device, f"{self._cmd_syntax}:END") + self._focus = MarkSelectedFocus(device, f"{self._cmd_syntax}:FOCUS") + self._marksincolumn = MarkSelectedMarksincolumn(device, f"{self._cmd_syntax}:MARKSINCOLumn") + self._owner = MarkSelectedOwner(device, f"{self._cmd_syntax}:OWNer") + self._source = MarkSelectedSource(device, f"{self._cmd_syntax}:SOURCe") + self._start = MarkSelectedStart(device, f"{self._cmd_syntax}:STARt") + self._state = MarkSelectedState(device, f"{self._cmd_syntax}:STATE") + self._zoom = MarkSelectedZoom(device, f"{self._cmd_syntax}:ZOOm") + + @property + def end(self) -> MarkSelectedEnd: + """Return the ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + return self._end + + @property + def focus(self) -> MarkSelectedFocus: + """Return the ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + return self._focus + + @property + def marksincolumn(self) -> MarkSelectedMarksincolumn: + """Return the ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + return self._marksincolumn + + @property + def owner(self) -> MarkSelectedOwner: + """Return the ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + return self._owner + + @property + def source(self) -> MarkSelectedSource: + """Return the ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + return self._source + + @property + def start(self) -> MarkSelectedStart: + """Return the ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + return self._start + + @property + def state(self) -> MarkSelectedState: + """Return the ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + return self._state + + @property + def zoom(self) -> MarkSelectedZoom: + """Return the ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + return self._zoom + + +class MarkSaveall(SCPICmdWrite): + """The ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user search + mark list in internal memory. (This is equivalent to pressing the 'Save All Marks' button + in the Search button menu on the front panel.) In order to retrieve the information, use + the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + + +class MarkFree(SCPICmdRead): + """The ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + + +class MarkCreate(SCPICmdWrite): + """The ``MARK:CREATE`` command. + + Description: + - Creates a mark on a specified waveform or all waveforms in a column. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:CREATE value`` command. + + SCPI Syntax: + ``` + - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` creates the mark on a channel waveform, where is the channel number. + - ``MATH`` creates the mark on the math waveform. + - ``B`` creates the mark on a bus waveform, where . + - ``REF`` creates the mark on a reference waveform, where is the reference waveform + number. + - ``DIGital`` creates the mark on a digital waveform. (An error will result if no digital + channel is turned on.) (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models + with option MDO3MSO or MDO4MSO installed.). + - ``COLUMN`` creates marks on all waveforms in the current zoom pixel column. + - ``RF_AMPlitude`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_FREQuency`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_PHASe`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + """ # noqa: E501 + + +class Mark(SCPICmdWrite, SCPICmdRead): + """The ``MARK`` command. + + Description: + - Moves to the next or previous reference mark on the waveform. Returns the current mark + position. + + Usage: + - Using the ``.query()`` method will send the ``MARK?`` query. + - Using the ``.verify(value)`` method will send the ``MARK?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK value`` command. + + SCPI Syntax: + ``` + - MARK {NEXT|PREVious} + - MARK? + ``` + + Info: + - ``NEXT`` moves to the next reference mark on the right. + - ``PREVious`` moves to the next reference mark on the left. + + Properties: + - ``.create``: The ``MARK:CREATE`` command. + - ``.free``: The ``MARK:FREE`` command. + - ``.saveall``: The ``MARK:SAVEALL`` command. + - ``.selected``: The ``MARK:SELected`` command tree. + - ``.total``: The ``MARK:TOTal`` command. + - ``.userlist``: The ``MARK:USERLIST`` command. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "MARK") -> None: + super().__init__(device, cmd_syntax) + self._create = MarkCreate(device, f"{self._cmd_syntax}:CREATE") + self._free = MarkFree(device, f"{self._cmd_syntax}:FREE") + self._saveall = MarkSaveall(device, f"{self._cmd_syntax}:SAVEALL") + self._selected = MarkSelected(device, f"{self._cmd_syntax}:SELected") + self._total = MarkTotal(device, f"{self._cmd_syntax}:TOTal") + self._userlist = MarkUserlist(device, f"{self._cmd_syntax}:USERLIST") + + @property + def create(self) -> MarkCreate: + """Return the ``MARK:CREATE`` command. + + Description: + - Creates a mark on a specified waveform or all waveforms in a column. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:CREATE value`` command. + + SCPI Syntax: + ``` + - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` creates the mark on a channel waveform, where is the channel number. + - ``MATH`` creates the mark on the math waveform. + - ``B`` creates the mark on a bus waveform, where . + - ``REF`` creates the mark on a reference waveform, where is the reference + waveform number. + - ``DIGital`` creates the mark on a digital waveform. (An error will result if no + digital channel is turned on.) (MSO/MDO4000/B models only as well as MDO3000 and + MDO400C models with option MDO3MSO or MDO4MSO installed.). + - ``COLUMN`` creates marks on all waveforms in the current zoom pixel column. + - ``RF_AMPlitude`` creates the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` creates the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_PHASe`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + """ # noqa: E501 + return self._create + + @property + def free(self) -> MarkFree: + """Return the ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + return self._free + + @property + def saveall(self) -> MarkSaveall: + """Return the ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user + search mark list in internal memory. (This is equivalent to pressing the 'Save All + Marks' button in the Search button menu on the front panel.) In order to retrieve the + information, use the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + return self._saveall + + @property + def selected(self) -> MarkSelected: + """Return the ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + return self._selected + + @property + def total(self) -> MarkTotal: + """Return the ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + return self._total + + @property + def userlist(self) -> MarkUserlist: + """Return the ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the + command form if any of the following conditions are true: The source waveform is not + turned on. The position of the mark is not on the waveform. The maximum number of + marks would be exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + return self._userlist diff --git a/src/tm_devices/commands/gen_16x4xq_mdo/search.py b/src/tm_devices/commands/gen_16x4xq_mdo/search.py index f3c09c8e..8aadac90 100644 --- a/src/tm_devices/commands/gen_16x4xq_mdo/search.py +++ b/src/tm_devices/commands/gen_16x4xq_mdo/search.py @@ -997,9 +997,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -1177,9 +1177,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -1276,8 +1276,14 @@ class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): - ``MATH`` specifies to use the math waveform as the as the source waveform. - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + - ``D`` specifies to use one of the digital channels as the source waveform. + (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with option MDO3MSO or + MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_PHASe`` specify an RF time domain trace as the source. (MDO4000/B/C models only.). """ # noqa: E501 @@ -1392,7 +1398,14 @@ def source(self) -> SearchSearchItemTriggerATimeoutSource: - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source waveform. x has a minimum of 1 and a maximum of 4. - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with option MDO3MSO + or MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_PHASe`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). """ # noqa: E501 return self._source @@ -1738,13 +1751,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1759,8 +1770,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1801,13 +1811,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1900,6 +1908,12 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. (MDO4000/B/C + only.). """ # noqa: E501 @@ -2017,6 +2031,12 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -2111,8 +2131,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -2283,11 +2302,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2404,11 +2421,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2537,9 +2552,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2714,9 +2729,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -4544,6 +4559,9 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 @@ -4660,6 +4678,11 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -5575,13 +5598,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -5686,13 +5706,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -13847,7 +13864,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search number, which - is always 1, and B is the bus number (1-2). + is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and 1-2 for the + MDO3000. Usage: - Using the ``.query()`` method will send the @@ -14042,7 +14060,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search - number, which is always 1, and B is the bus number (1-2). + number, which is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and + 1-2 for the MDO3000. Usage: - Using the ``.query()`` method will send the diff --git a/src/tm_devices/commands/gen_1jzp7o_mdodpo/trigger.py b/src/tm_devices/commands/gen_1jzp7o_mdodpo/trigger.py index fd01d7c5..b0115a57 100644 --- a/src/tm_devices/commands/gen_1jzp7o_mdodpo/trigger.py +++ b/src/tm_devices/commands/gen_1jzp7o_mdodpo/trigger.py @@ -1079,8 +1079,7 @@ class TriggerBEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -1241,8 +1240,7 @@ def source(self) -> TriggerBEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -2549,7 +2547,7 @@ class TriggerATransitionSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -2713,7 +2711,7 @@ def source(self) -> TriggerATransitionSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -2800,13 +2798,12 @@ class TriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -2915,13 +2912,12 @@ def source(self) -> TriggerATimeoutSource: ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -3196,9 +3192,8 @@ class TriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a minimum - of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3256,9 +3251,8 @@ def source(self) -> TriggerASetholdDataSource: Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a - minimum of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3340,10 +3334,9 @@ class TriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3452,10 +3445,9 @@ def source(self) -> TriggerASetholdClockSource: ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3966,7 +3958,7 @@ class TriggerARisefallSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -4130,7 +4122,7 @@ def source(self) -> TriggerARisefallSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -4362,13 +4354,11 @@ class TriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ @@ -4582,13 +4572,11 @@ def source(self) -> TriggerAPulsewidthSource: ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ return self._source @@ -5430,10 +5418,8 @@ class TriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x has a - minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ @@ -5534,10 +5520,8 @@ def source(self) -> TriggerALogicInputClockSource: ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ return self._source @@ -6259,10 +6243,8 @@ class TriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a minimum - of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog input channel as the A edge trigger source. + - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - ``LINE`` specifies the AC power line as the trigger source. """ @@ -6437,10 +6419,8 @@ def source(self) -> TriggerAEdgeSource: Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the A edge trigger source. - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - x has a minimum of 0 and a maximum of 15. - ``LINE`` specifies the AC power line as the trigger source. """ return self._source diff --git a/src/tm_devices/commands/gen_1kdqwg_mdo/search.py b/src/tm_devices/commands/gen_1kdqwg_mdo/search.py index cc86ec52..66be7623 100644 --- a/src/tm_devices/commands/gen_1kdqwg_mdo/search.py +++ b/src/tm_devices/commands/gen_1kdqwg_mdo/search.py @@ -1041,9 +1041,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -1221,9 +1221,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -1320,8 +1320,14 @@ class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): - ``MATH`` specifies to use the math waveform as the as the source waveform. - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + - ``D`` specifies to use one of the digital channels as the source waveform. + (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with option MDO3MSO or + MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_PHASe`` specify an RF time domain trace as the source. (MDO4000/B/C models only.). """ # noqa: E501 @@ -1436,7 +1442,14 @@ def source(self) -> SearchSearchItemTriggerATimeoutSource: - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source waveform. x has a minimum of 1 and a maximum of 4. - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with option MDO3MSO + or MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). + - ``RF_PHASe`` specify an RF time domain trace as the source. (MDO4000/B/C models + only.). """ # noqa: E501 return self._source @@ -1782,13 +1795,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1803,8 +1814,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1845,13 +1855,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1944,6 +1952,12 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. (MDO4000/B/C + only.). """ # noqa: E501 @@ -2061,6 +2075,12 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -2155,8 +2175,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -2327,11 +2346,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2448,11 +2465,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2581,9 +2596,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2758,9 +2773,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -4588,6 +4603,9 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 @@ -4704,6 +4722,11 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -5619,13 +5642,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -5730,13 +5750,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -15294,7 +15311,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search number, which - is always 1, and B is the bus number (1-2). + is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and 1-2 for the + MDO3000. Usage: - Using the ``.query()`` method will send the @@ -15489,7 +15507,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search - number, which is always 1, and B is the bus number (1-2). + number, which is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and + 1-2 for the MDO3000. Usage: - Using the ``.query()`` method will send the diff --git a/src/tm_devices/commands/gen_1kdqwg_mdo/trigger.py b/src/tm_devices/commands/gen_1kdqwg_mdo/trigger.py index 55d5b308..e287bc2c 100644 --- a/src/tm_devices/commands/gen_1kdqwg_mdo/trigger.py +++ b/src/tm_devices/commands/gen_1kdqwg_mdo/trigger.py @@ -1125,8 +1125,7 @@ class TriggerBEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -1287,8 +1286,7 @@ def source(self) -> TriggerBEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -2595,7 +2593,7 @@ class TriggerATransitionSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -2759,7 +2757,7 @@ def source(self) -> TriggerATransitionSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -2846,13 +2844,12 @@ class TriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -2961,13 +2958,12 @@ def source(self) -> TriggerATimeoutSource: ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -3242,9 +3238,8 @@ class TriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a minimum - of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3302,9 +3297,8 @@ def source(self) -> TriggerASetholdDataSource: Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a - minimum of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3386,10 +3380,9 @@ class TriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3498,10 +3491,9 @@ def source(self) -> TriggerASetholdClockSource: ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -4012,7 +4004,7 @@ class TriggerARisefallSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -4176,7 +4168,7 @@ def source(self) -> TriggerARisefallSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -4408,13 +4400,11 @@ class TriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ @@ -4628,13 +4618,11 @@ def source(self) -> TriggerAPulsewidthSource: ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ return self._source @@ -5476,10 +5464,8 @@ class TriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x has a - minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ @@ -5580,10 +5566,8 @@ def source(self) -> TriggerALogicInputClockSource: ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ return self._source @@ -6305,10 +6289,8 @@ class TriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a minimum - of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog input channel as the A edge trigger source. + - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - ``LINE`` specifies the AC power line as the trigger source. """ @@ -6483,10 +6465,8 @@ def source(self) -> TriggerAEdgeSource: Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the A edge trigger source. - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - x has a minimum of 0 and a maximum of 15. - ``LINE`` specifies the AC power line as the trigger source. """ return self._source diff --git a/src/tm_devices/commands/gen_1kozfv_dpo/search.py b/src/tm_devices/commands/gen_1kozfv_dpo/search.py index 193054c8..5297ad48 100644 --- a/src/tm_devices/commands/gen_1kozfv_dpo/search.py +++ b/src/tm_devices/commands/gen_1kozfv_dpo/search.py @@ -362,8 +362,6 @@ - SEARCH:SEARCH:TRIGger:A:SETHold:THReshold:REF? - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTatime @@ -716,9 +714,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -896,9 +894,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -965,41 +963,6 @@ class SearchSearchItemTriggerATimeoutTime(SCPICmdWrite, SCPICmdRead): """ -class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): - """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - - Description: - - When searching using the TIMEOut search type, this command specifies the source. The - available sources are live channels, reference waveforms, the math waveform, or the - digital channels. The default is channel 1. The timeout search type is selected using - ``SEARCH:SEARCHX:TRIGGER:A:TYPE``. SEARCH is the search number, which is always 1. - - Usage: - - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` - query. - - Using the ``.verify(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query and raise an AssertionError if the - returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce value`` command. - - SCPI Syntax: - ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - ``` - - Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` specifies to use the math waveform as the as the source waveform. - - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. - """ # noqa: E501 - - class SearchSearchItemTriggerATimeoutPolarity(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. @@ -1038,7 +1001,6 @@ class SearchSearchItemTriggerATimeout(SCPICmdRead): Properties: - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. - - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. """ @@ -1047,7 +1009,6 @@ def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: self._polarity = SearchSearchItemTriggerATimeoutPolarity( device, f"{self._cmd_syntax}:POLarity" ) - self._source = SearchSearchItemTriggerATimeoutSource(device, f"{self._cmd_syntax}:SOUrce") self._time = SearchSearchItemTriggerATimeoutTime(device, f"{self._cmd_syntax}:TIMe") @property @@ -1079,42 +1040,6 @@ def polarity(self) -> SearchSearchItemTriggerATimeoutPolarity: """ return self._polarity - @property - def source(self) -> SearchSearchItemTriggerATimeoutSource: - """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - - Description: - - When searching using the TIMEOut search type, this command specifies the source. The - available sources are live channels, reference waveforms, the math waveform, or the - digital channels. The default is channel 1. The timeout search type is selected using - ``SEARCH:SEARCHX:TRIGGER:A:TYPE``. SEARCH is the search number, which is always 1. - - Usage: - - Using the ``.query()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query. - - Using the ``.verify(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query and raise an AssertionError if - the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce value`` command. - - SCPI Syntax: - ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - ``` - - Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` specifies to use the math waveform as the as the source waveform. - - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. - """ # noqa: E501 - return self._source - @property def time(self) -> SearchSearchItemTriggerATimeoutTime: """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. @@ -1457,13 +1382,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1478,8 +1401,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1520,13 +1442,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1619,6 +1539,12 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. (MDO4000/B/C + only.). """ # noqa: E501 @@ -1736,6 +1662,12 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -1830,8 +1762,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -2002,11 +1933,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2123,11 +2052,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2256,9 +2183,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2433,9 +2360,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -3914,6 +3841,9 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 @@ -4030,6 +3960,11 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -4814,13 +4749,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -4925,13 +4857,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -13086,7 +13015,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search number, which - is always 1, and B is the bus number (1-2). + is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and 1-2 for the + MDO3000. Usage: - Using the ``.query()`` method will send the @@ -13281,7 +13211,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search - number, which is always 1, and B is the bus number (1-2). + number, which is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and + 1-2 for the MDO3000. Usage: - Using the ``.query()`` method will send the @@ -15321,7 +15252,6 @@ def timeout(self) -> SearchSearchItemTriggerATimeout: Sub-properties: - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. - - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. """ return self._timeout diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/bus.py b/src/tm_devices/commands/gen_1l4fot_mdomso/bus.py similarity index 97% rename from src/tm_devices/commands/gen_1ltpwt_mdomsodpo/bus.py rename to src/tm_devices/commands/gen_1l4fot_mdomso/bus.py index 9905c5c7..20275e09 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/bus.py +++ b/src/tm_devices/commands/gen_1l4fot_mdomso/bus.py @@ -2,7 +2,7 @@ """The bus commands module. These commands are used in the following models: -DPO4K, DPO4KB, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO4K, MSO4KB +MDO3K, MDO4KB, MDO4KC, MSO4KB THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. @@ -924,10 +924,9 @@ class BusBItemUsbSourceDplus(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform for D+ input. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform for D+ input. - ``D`` specifies a digital channel as the source waveform for D+ input. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -952,10 +951,9 @@ class BusBItemUsbSourceDminus(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform for the D- input. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform for the D- input. - ``D`` specifies a digital channel as the source waveform for the D- input. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ @@ -981,10 +979,9 @@ class BusBItemUsbSourceDifferential(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies an analog waveform as the source. This channel should have an attached - differential probe. x has a minimum of 1 and a maximum of 4. + differential probe. - ``MATH`` specifies the math waveform as the source. - - ``REF`` specifies a reference waveform as the source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the source. """ @@ -1035,10 +1032,9 @@ def differential(self) -> BusBItemUsbSourceDifferential: Info: - ``CH`` specifies an analog waveform as the source. This channel should have an - attached differential probe. x has a minimum of 1 and a maximum of 4. + attached differential probe. - ``MATH`` specifies the math waveform as the source. - - ``REF`` specifies a reference waveform as the source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the source. """ return self._differential @@ -1064,10 +1060,9 @@ def dminus(self) -> BusBItemUsbSourceDminus: ``` Info: - - ``CH`` specifies an analog channel as the source waveform for the D- input. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform for the D- input. - ``D`` specifies a digital channel as the source waveform for the D- input. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (Requires option 3-MSO.). """ return self._dminus @@ -1093,10 +1088,9 @@ def dplus(self) -> BusBItemUsbSourceDplus: ``` Info: - - ``CH`` specifies an analog channel as the source waveform for D+ input. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform for D+ input. - ``D`` specifies a digital channel as the source waveform for D+ input. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ return self._dplus @@ -1319,10 +1313,8 @@ class BusBItemSpiSsSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ @@ -1416,10 +1408,8 @@ def source(self) -> BusBItemSpiSsSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ return self._source @@ -1444,10 +1434,8 @@ class BusBItemSpiSelectSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ @@ -1541,10 +1529,8 @@ def source(self) -> BusBItemSpiSelectSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ return self._source @@ -1569,10 +1555,9 @@ class BusBItemSpiSclkSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). """ @@ -1666,10 +1651,9 @@ def source(self) -> BusBItemSpiSclkSource: ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the SCLK source waveform. - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -1765,10 +1749,9 @@ class BusBItemSpiDataOutSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the MOSI source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the MOSI source waveform. - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -1862,10 +1845,9 @@ def source(self) -> BusBItemSpiDataOutSource: ``` Info: - - ``CH`` specifies an analog channel as the MOSI source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the MOSI source waveform. - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -1890,10 +1872,9 @@ class BusBItemSpiDataMosiSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the MOSI source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the MOSI source waveform. - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -1988,10 +1969,9 @@ def source(self) -> BusBItemSpiDataMosiSource: ``` Info: - - ``CH`` specifies an analog channel as the MOSI source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the MOSI source waveform. - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -2016,10 +1996,9 @@ class BusBItemSpiDataMisoSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the MISO source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO option.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). """ @@ -2114,10 +2093,9 @@ def source(self) -> BusBItemSpiDataMisoSource: ``` Info: - - ``CH`` specifies an analog channel as the MISO source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the MISO source waveform. - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO - option.) x has a minimum of 0 and a maximum of 15. + option.). """ return self._source @@ -2142,10 +2120,9 @@ class BusBItemSpiDataInSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the MISO source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO option.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). """ @@ -2239,10 +2216,9 @@ def source(self) -> BusBItemSpiDataInSource: ``` Info: - - ``CH`` specifies an analog channel as the MISO source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the MISO source waveform. - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO - option.) x has a minimum of 0 and a maximum of 15. + option.). """ return self._source @@ -2383,10 +2359,9 @@ class BusBItemSpiClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). """ @@ -2480,10 +2455,9 @@ def source(self) -> BusBItemSpiClockSource: ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the SCLK source waveform. - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -2733,10 +2707,8 @@ class BusBItemRs232cTxSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the TX source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the TX source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the TX source waveform. + - ``D`` specifies a digital channel as the TX source waveform. (Requires option 3-MSO.). - ``Off`` sets the specified bus input to off. """ @@ -2778,10 +2750,9 @@ def source(self) -> BusBItemRs232cTxSource: ``` Info: - - ``CH`` specifies an analog channel as the TX source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the TX source waveform. - ``D`` specifies a digital channel as the TX source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). - ``Off`` sets the specified bus input to off. """ return self._source @@ -2807,10 +2778,8 @@ class BusBItemRs232cRxSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the RX source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the RX source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the RX source waveform. + - ``D`` specifies a digital channel as the RX source waveform. (Requires option 3-MSO.). - ``Off`` sets the specified bus input to off. """ @@ -2852,10 +2821,9 @@ def source(self) -> BusBItemRs232cRxSource: ``` Info: - - ``CH`` specifies an analog channel as the RX source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the RX source waveform. - ``D`` specifies a digital channel as the RX source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). - ``Off`` sets the specified bus input to off. """ return self._source @@ -3312,10 +3280,8 @@ class BusBItemParallelClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel to use the clock source waveform. x has a minimum of - 1 and a maximum of 4. - - ``D`` specifies a digital channels the clock source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel to use the clock source waveform. + - ``D`` specifies a digital channels the clock source waveform. (Requires option 3-MSO.). """ @@ -3466,10 +3432,9 @@ def source(self) -> BusBItemParallelClockSource: ``` Info: - - ``CH`` specifies an analog channel to use the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel to use the clock source waveform. - ``D`` specifies a digital channels the clock source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -3494,10 +3459,8 @@ class BusBItemParallelBitItemSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the bit source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the bit source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the bit source waveform. + - ``D`` specifies a digital channel as the bit source waveform. (Requires option 3-MSO.). """ @@ -3539,10 +3502,9 @@ def source(self) -> BusBItemParallelBitItemSource: ``` Info: - - ``CH`` specifies an analog channel as the bit source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the bit source waveform. - ``D`` specifies a digital channel as the bit source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -3647,12 +3609,10 @@ class BusBItemMil1553bSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source for differential input. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source for differential input. - ``MATH`` specifies the math waveform as the MIL-STD-1553 bus source for differential input. - - ``REF`` specifies a reference waveform as the source for differential input. x has a - minimum of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the source for differential input. """ @@ -3915,12 +3875,10 @@ def source(self) -> BusBItemMil1553bSource: ``` Info: - - ``CH`` specifies an analog channel as the source for differential input. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source for differential input. - ``MATH`` specifies the math waveform as the MIL-STD-1553 bus source for differential input. - - ``REF`` specifies a reference waveform as the source for differential input. x has - a minimum of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the source for differential input. """ return self._source @@ -3969,10 +3927,8 @@ class BusBItemLinSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ @@ -4281,10 +4237,8 @@ def source(self) -> BusBItemLinSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ return self._source @@ -4360,10 +4314,9 @@ class BusBItemI2cSdataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the I2C SDATA source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -4404,10 +4357,9 @@ def source(self) -> BusBItemI2cSdataSource: ``` Info: - - ``CH`` specifies an analog channel as the I2C SDATA source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ return self._source @@ -4432,10 +4384,9 @@ class BusBItemI2cSclkSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). """ @@ -4476,10 +4427,9 @@ def source(self) -> BusBItemI2cSclkSource: ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the SCLK source waveform. - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -4504,10 +4454,9 @@ class BusBItemI2cDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the I2C SDATA source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -4548,10 +4497,9 @@ def source(self) -> BusBItemI2cDataSource: ``` Info: - - ``CH`` specifies an analog channel as the I2C SDATA source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ return self._source @@ -4576,10 +4524,9 @@ class BusBItemI2cClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). """ @@ -4620,10 +4567,9 @@ def source(self) -> BusBItemI2cClockSource: ``` Info: - - ``CH`` specifies an analog channel as the SCLK source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the SCLK source waveform. - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -4811,8 +4757,7 @@ class BusBItemFlexraySource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. """ @@ -5022,8 +4967,7 @@ def source(self) -> BusBItemFlexraySource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. """ return self._source @@ -5079,7 +5023,8 @@ class BusBItemEthernetSourceDplus(SCPICmdWrite, SCPICmdRead): - ``CH`` specifies to use one of the analog channels 1-4 as the Ethernet data source for the D+ input. x has a minimum of 1 and a maximum of 4. - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data source - for the D+ input. Requires option 3-MSO. x has a minimum of 0 and a maximum of 15. + for the D+ input. (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models with + option MDO3MSO or MDO4MSO installed.) x has a minimum of 0 and a maximum of 15. """ # noqa: E501 @@ -5105,9 +5050,9 @@ class BusBItemEthernetSourceDminus(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies to use one of the analog channels as the Ethernet data source for the - D- input. x has a minimum of 1 and a maximum of 4. + D- input. - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data source - for the D- input. x has a minimum of 0 and a maximum of 15. + for the D- input. """ @@ -5136,11 +5081,11 @@ class BusBItemEthernetSourceDifferential(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies to use one of the channels 1-4 as the Ethernet data source for - differential input. x has a minimum of 1 and a maximum of 4. + differential input. - ``MATH`` specifies to use the math waveform as the source for Ethernet data differential input. - ``REF`` specifies to use one of the reference waveforms 1-4 as the source for Ethernet - data differential input. x has a minimum of 1 and a maximum of 4. + data differential input. """ @@ -5192,11 +5137,11 @@ def differential(self) -> BusBItemEthernetSourceDifferential: Info: - ``CH`` specifies to use one of the channels 1-4 as the Ethernet data source for - differential input. x has a minimum of 1 and a maximum of 4. + differential input. - ``MATH`` specifies to use the math waveform as the source for Ethernet data differential input. - ``REF`` specifies to use one of the reference waveforms 1-4 as the source for - Ethernet data differential input. x has a minimum of 1 and a maximum of 4. + Ethernet data differential input. """ return self._differential @@ -5224,9 +5169,9 @@ def dminus(self) -> BusBItemEthernetSourceDminus: Info: - ``CH`` specifies to use one of the analog channels as the Ethernet data source for - the D- input. x has a minimum of 1 and a maximum of 4. + the D- input. - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data - source for the D- input. x has a minimum of 0 and a maximum of 15. + source for the D- input. """ return self._dminus @@ -5255,8 +5200,9 @@ def dplus(self) -> BusBItemEthernetSourceDplus: - ``CH`` specifies to use one of the analog channels 1-4 as the Ethernet data source for the D+ input. x has a minimum of 1 and a maximum of 4. - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data - source for the D+ input. Requires option 3-MSO. x has a minimum of 0 and a maximum of - 15. + source for the D+ input. (MSO/MDO4000/B models only as well as MDO3000 and MDO400C + models with option MDO3MSO or MDO4MSO installed.) x has a minimum of 0 and a maximum + of 15. """ # noqa: E501 return self._dplus @@ -5629,10 +5575,9 @@ class BusBItemCanSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the data source waveform. - ``D`` specifies a digital channel as the data source waveform. (Requires installation - of option 3-MSO.) x has a minimum of 0 and a maximum of 15. + of option 3-MSO.). """ @@ -5983,10 +5928,9 @@ def source(self) -> BusBItemCanSource: ``` Info: - - ``CH`` specifies an analog channel as the data source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the data source waveform. - ``D`` specifies a digital channel as the data source waveform. (Requires - installation of option 3-MSO.) x has a minimum of 0 and a maximum of 15. + installation of option 3-MSO.). """ return self._source @@ -6037,10 +5981,9 @@ class BusBItemAudioWordselSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the word select source waveform . x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the word select source waveform . - ``D`` specifies a digital channel as the word select source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -6142,10 +6085,9 @@ def source(self) -> BusBItemAudioWordselSource: ``` Info: - - ``CH`` specifies an analog channel as the word select source waveform . x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the word select source waveform . - ``D`` specifies a digital channel as the word select source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ return self._source @@ -6198,10 +6140,9 @@ class BusBItemAudioFramesyncSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the frame sync source waveform. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the frame sync source waveform. - ``D`` specifies a digital channel as the frame sync source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -6298,10 +6239,9 @@ def source(self) -> BusBItemAudioFramesyncSource: ``` Info: - - ``CH`` specifies an analog channel as the frame sync source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the frame sync source waveform. - ``D`` specifies a digital channel as the frame sync source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ return self._source @@ -6469,10 +6409,9 @@ class BusBItemAudioDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source waveform for the audio bus. x has - a minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. - ``D`` specifies a digital channel as the data source waveform for the audio bus. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (Requires option 3-MSO.). """ @@ -6621,10 +6560,9 @@ def source(self) -> BusBItemAudioDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source waveform for the audio bus. x - has a minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. - ``D`` specifies a digital channel as the data source waveform for the audio bus. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (Requires option 3-MSO.). """ return self._source @@ -6649,10 +6587,9 @@ class BusBItemAudioClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. x - has a minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. - ``D`` specifies a digital channel as the clock source waveform for the audio bus. - (Requires installation of option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (Requires installation of option 3-MSO.). """ @@ -6747,9 +6684,8 @@ def source(self) -> BusBItemAudioClockSource: Info: - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. - x has a minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform for the audio bus. - (Requires installation of option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (Requires installation of option 3-MSO.). """ return self._source @@ -7126,11 +7062,9 @@ class BusBItemArinc429aSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source for the differential input. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source for the differential input. - ``MATH`` specifies the math waveform as the source for differential input. - - ``REF`` specifies a reference waveform as the source for differential input. x has a - minimum of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the source for differential input. """ @@ -7380,11 +7314,9 @@ def source(self) -> BusBItemArinc429aSource: ``` Info: - - ``CH`` specifies an analog channel as the source for the differential input. x has - a minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the source for the differential input. - ``MATH`` specifies the math waveform as the source for differential input. - - ``REF`` specifies a reference waveform as the source for differential input. x has - a minimum of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the source for differential input. """ return self._source diff --git a/src/tm_devices/commands/gen_1la1ym_msomdodpo/trigger.py b/src/tm_devices/commands/gen_1la1ym_msomdodpo/trigger.py index c78b743f..6a73581b 100644 --- a/src/tm_devices/commands/gen_1la1ym_msomdodpo/trigger.py +++ b/src/tm_devices/commands/gen_1la1ym_msomdodpo/trigger.py @@ -1119,8 +1119,7 @@ class TriggerBEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -1281,8 +1280,7 @@ def source(self) -> TriggerBEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -2589,7 +2587,7 @@ class TriggerATransitionSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -2753,7 +2751,7 @@ def source(self) -> TriggerATransitionSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -2840,13 +2838,12 @@ class TriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -2955,13 +2952,12 @@ def source(self) -> TriggerATimeoutSource: ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -3236,9 +3232,8 @@ class TriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a minimum - of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3296,9 +3291,8 @@ def source(self) -> TriggerASetholdDataSource: Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a - minimum of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3380,10 +3374,9 @@ class TriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3492,10 +3485,9 @@ def source(self) -> TriggerASetholdClockSource: ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -4006,7 +3998,7 @@ class TriggerARisefallSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -4170,7 +4162,7 @@ def source(self) -> TriggerARisefallSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -4402,13 +4394,11 @@ class TriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ @@ -4622,13 +4612,11 @@ def source(self) -> TriggerAPulsewidthSource: ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ return self._source @@ -5470,10 +5458,8 @@ class TriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x has a - minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ @@ -5574,10 +5560,8 @@ def source(self) -> TriggerALogicInputClockSource: ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ return self._source @@ -6299,10 +6283,8 @@ class TriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a minimum - of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog input channel as the A edge trigger source. + - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - ``LINE`` specifies the AC power line as the trigger source. """ @@ -6477,10 +6459,8 @@ def source(self) -> TriggerAEdgeSource: Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the A edge trigger source. - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - x has a minimum of 0 and a maximum of 15. - ``LINE`` specifies the AC power line as the trigger source. """ return self._source diff --git a/src/tm_devices/commands/gen_1le9o2_mdo/__init__.py b/src/tm_devices/commands/gen_1le9o2_mdo/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_1le9o2_mdo/mark.py b/src/tm_devices/commands/gen_1le9o2_mdo/mark.py new file mode 100644 index 00000000..5c6838ee --- /dev/null +++ b/src/tm_devices/commands/gen_1le9o2_mdo/mark.py @@ -0,0 +1,779 @@ +# pylint: disable=line-too-long +"""The mark commands module. + +These commands are used in the following models: +MDO4KB, MDO4KC + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MARK {NEXT|PREVious} + - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:FREE? + - MARK:SAVEALL TOUSER + - MARK:SELected:END? + - MARK:SELected:FOCUS? + - MARK:SELected:MARKSINCOLumn? + - MARK:SELected:OWNer? + - MARK:SELected:SOURCe? + - MARK:SELected:STARt? + - MARK:SELected:STATE? + - MARK:SELected:ZOOm:POSition? + - MARK:TOTal? + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + - MARK? + ``` +""" # noqa: E501 + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class MarkUserlist(SCPICmdWrite, SCPICmdRead): + """The ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the command + form if any of the following conditions are true: The source waveform is not turned on. + The position of the mark is not on the waveform. The maximum number of marks would be + exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + + +class MarkTotal(SCPICmdRead): + """The ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + + +class MarkSelectedZoomPosition(SCPICmdRead): + """The ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + + +class MarkSelectedZoom(SCPICmdRead): + """The ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = MarkSelectedZoomPosition(device, f"{self._cmd_syntax}:POSition") + + @property + def position(self) -> MarkSelectedZoomPosition: + """Return the ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + return self._position + + +class MarkSelectedState(SCPICmdRead): + """The ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + + +class MarkSelectedStart(SCPICmdRead): + """The ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + + +class MarkSelectedSource(SCPICmdRead): + """The ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + + +class MarkSelectedOwner(SCPICmdRead): + """The ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + + +class MarkSelectedMarksincolumn(SCPICmdRead): + """The ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + + +class MarkSelectedFocus(SCPICmdRead): + """The ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + + +class MarkSelectedEnd(SCPICmdRead): + """The ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class MarkSelected(SCPICmdRead): + """The ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._end = MarkSelectedEnd(device, f"{self._cmd_syntax}:END") + self._focus = MarkSelectedFocus(device, f"{self._cmd_syntax}:FOCUS") + self._marksincolumn = MarkSelectedMarksincolumn(device, f"{self._cmd_syntax}:MARKSINCOLumn") + self._owner = MarkSelectedOwner(device, f"{self._cmd_syntax}:OWNer") + self._source = MarkSelectedSource(device, f"{self._cmd_syntax}:SOURCe") + self._start = MarkSelectedStart(device, f"{self._cmd_syntax}:STARt") + self._state = MarkSelectedState(device, f"{self._cmd_syntax}:STATE") + self._zoom = MarkSelectedZoom(device, f"{self._cmd_syntax}:ZOOm") + + @property + def end(self) -> MarkSelectedEnd: + """Return the ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + return self._end + + @property + def focus(self) -> MarkSelectedFocus: + """Return the ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + return self._focus + + @property + def marksincolumn(self) -> MarkSelectedMarksincolumn: + """Return the ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + return self._marksincolumn + + @property + def owner(self) -> MarkSelectedOwner: + """Return the ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + return self._owner + + @property + def source(self) -> MarkSelectedSource: + """Return the ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + return self._source + + @property + def start(self) -> MarkSelectedStart: + """Return the ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + return self._start + + @property + def state(self) -> MarkSelectedState: + """Return the ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + return self._state + + @property + def zoom(self) -> MarkSelectedZoom: + """Return the ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + return self._zoom + + +class MarkSaveall(SCPICmdWrite): + """The ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user search + mark list in internal memory. (This is equivalent to pressing the 'Save All Marks' button + in the Search button menu on the front panel.) In order to retrieve the information, use + the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + + +class MarkFree(SCPICmdRead): + """The ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + + +class MarkDelete(SCPICmdWrite): + """The ``MARK:DELEte`` command. + + Description: + - This command deletes a mark on a particular waveform, all waveforms in a column, the + selected mark, or all marks. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:DELEte value`` command. + + SCPI Syntax: + ``` + - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` deletes the mark on a channel waveform, where is the channel number. + - ``MATH`` deletes the mark on the math waveform. + - ``B`` deletes the mark on a bus waveform, where . + - ``REF`` deletes the mark on a reference waveform, where is the reference waveform + number. + - ``DIGital`` deletes all marks on all digital channels. (MSO/MDO4000/B models only as well + as MDO3000 and MDO400C models with option MDO3MSO or MDO4MSO installed.). + - ``RF_AMPlitude`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_FREQuency`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_PHASe`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``COLUMN`` deletes marks on all waveforms in the current zoom pixel column. + """ # noqa: E501 + + +class MarkCreate(SCPICmdWrite): + """The ``MARK:CREATE`` command. + + Description: + - Creates a mark on a specified waveform or all waveforms in a column. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:CREATE value`` command. + + SCPI Syntax: + ``` + - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` creates the mark on a channel waveform, where is the channel number. + - ``MATH`` creates the mark on the math waveform. + - ``B`` creates the mark on a bus waveform, where . + - ``REF`` creates the mark on a reference waveform, where is the reference waveform + number. + - ``DIGital`` creates the mark on a digital waveform. (An error will result if no digital + channel is turned on.) (MSO/MDO4000/B models only as well as MDO3000 and MDO400C models + with option MDO3MSO or MDO4MSO installed.). + - ``COLUMN`` creates marks on all waveforms in the current zoom pixel column. + - ``RF_AMPlitude`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_FREQuency`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``RF_PHASe`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + """ # noqa: E501 + + +class Mark(SCPICmdWrite, SCPICmdRead): + """The ``MARK`` command. + + Description: + - Moves to the next or previous reference mark on the waveform. Returns the current mark + position. + + Usage: + - Using the ``.query()`` method will send the ``MARK?`` query. + - Using the ``.verify(value)`` method will send the ``MARK?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK value`` command. + + SCPI Syntax: + ``` + - MARK {NEXT|PREVious} + - MARK? + ``` + + Info: + - ``NEXT`` moves to the next reference mark on the right. + - ``PREVious`` moves to the next reference mark on the left. + + Properties: + - ``.create``: The ``MARK:CREATE`` command. + - ``.delete``: The ``MARK:DELEte`` command. + - ``.free``: The ``MARK:FREE`` command. + - ``.saveall``: The ``MARK:SAVEALL`` command. + - ``.selected``: The ``MARK:SELected`` command tree. + - ``.total``: The ``MARK:TOTal`` command. + - ``.userlist``: The ``MARK:USERLIST`` command. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "MARK") -> None: + super().__init__(device, cmd_syntax) + self._create = MarkCreate(device, f"{self._cmd_syntax}:CREATE") + self._delete = MarkDelete(device, f"{self._cmd_syntax}:DELEte") + self._free = MarkFree(device, f"{self._cmd_syntax}:FREE") + self._saveall = MarkSaveall(device, f"{self._cmd_syntax}:SAVEALL") + self._selected = MarkSelected(device, f"{self._cmd_syntax}:SELected") + self._total = MarkTotal(device, f"{self._cmd_syntax}:TOTal") + self._userlist = MarkUserlist(device, f"{self._cmd_syntax}:USERLIST") + + @property + def create(self) -> MarkCreate: + """Return the ``MARK:CREATE`` command. + + Description: + - Creates a mark on a specified waveform or all waveforms in a column. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:CREATE value`` command. + + SCPI Syntax: + ``` + - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` creates the mark on a channel waveform, where is the channel number. + - ``MATH`` creates the mark on the math waveform. + - ``B`` creates the mark on a bus waveform, where . + - ``REF`` creates the mark on a reference waveform, where is the reference + waveform number. + - ``DIGital`` creates the mark on a digital waveform. (An error will result if no + digital channel is turned on.) (MSO/MDO4000/B models only as well as MDO3000 and + MDO400C models with option MDO3MSO or MDO4MSO installed.). + - ``COLUMN`` creates marks on all waveforms in the current zoom pixel column. + - ``RF_AMPlitude`` creates the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` creates the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_PHASe`` creates the mark on an RF time domain trace. (MDO4000/B/C models only.). + """ # noqa: E501 + return self._create + + @property + def delete(self) -> MarkDelete: + """Return the ``MARK:DELEte`` command. + + Description: + - This command deletes a mark on a particular waveform, all waveforms in a column, the + selected mark, or all marks. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:DELEte value`` command. + + SCPI Syntax: + ``` + - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + ``` + + Info: + - ``CH`` deletes the mark on a channel waveform, where is the channel number. + - ``MATH`` deletes the mark on the math waveform. + - ``B`` deletes the mark on a bus waveform, where . + - ``REF`` deletes the mark on a reference waveform, where is the reference + waveform number. + - ``DIGital`` deletes all marks on all digital channels. (MSO/MDO4000/B models only as + well as MDO3000 and MDO400C models with option MDO3MSO or MDO4MSO installed.). + - ``RF_AMPlitude`` deletes the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_FREQuency`` deletes the mark on an RF time domain trace. (MDO4000/B/C models + only.). + - ``RF_PHASe`` deletes the mark on an RF time domain trace. (MDO4000/B/C models only.). + - ``COLUMN`` deletes marks on all waveforms in the current zoom pixel column. + """ # noqa: E501 + return self._delete + + @property + def free(self) -> MarkFree: + """Return the ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + return self._free + + @property + def saveall(self) -> MarkSaveall: + """Return the ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user + search mark list in internal memory. (This is equivalent to pressing the 'Save All + Marks' button in the Search button menu on the front panel.) In order to retrieve the + information, use the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + return self._saveall + + @property + def selected(self) -> MarkSelected: + """Return the ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + return self._selected + + @property + def total(self) -> MarkTotal: + """Return the ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + return self._total + + @property + def userlist(self) -> MarkUserlist: + """Return the ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the + command form if any of the following conditions are true: The source waveform is not + turned on. The position of the mark is not on the waveform. The maximum number of + marks would be exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + return self._userlist diff --git a/src/tm_devices/commands/gen_1lh2st_msodpo/search.py b/src/tm_devices/commands/gen_1lh2st_msodpo/search.py index 51d70b03..67c5f621 100644 --- a/src/tm_devices/commands/gen_1lh2st_msodpo/search.py +++ b/src/tm_devices/commands/gen_1lh2st_msodpo/search.py @@ -400,8 +400,6 @@ - SEARCH:SEARCH:TRIGger:A:SETHold:THReshold:REF? - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTatime @@ -754,9 +752,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -934,9 +932,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -1003,41 +1001,6 @@ class SearchSearchItemTriggerATimeoutTime(SCPICmdWrite, SCPICmdRead): """ -class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): - """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - - Description: - - When searching using the TIMEOut search type, this command specifies the source. The - available sources are live channels, reference waveforms, the math waveform, or the - digital channels. The default is channel 1. The timeout search type is selected using - ``SEARCH:SEARCHX:TRIGGER:A:TYPE``. SEARCH is the search number, which is always 1. - - Usage: - - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` - query. - - Using the ``.verify(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query and raise an AssertionError if the - returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce value`` command. - - SCPI Syntax: - ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - ``` - - Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` specifies to use the math waveform as the as the source waveform. - - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. - """ # noqa: E501 - - class SearchSearchItemTriggerATimeoutPolarity(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. @@ -1076,7 +1039,6 @@ class SearchSearchItemTriggerATimeout(SCPICmdRead): Properties: - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. - - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. """ @@ -1085,7 +1047,6 @@ def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: self._polarity = SearchSearchItemTriggerATimeoutPolarity( device, f"{self._cmd_syntax}:POLarity" ) - self._source = SearchSearchItemTriggerATimeoutSource(device, f"{self._cmd_syntax}:SOUrce") self._time = SearchSearchItemTriggerATimeoutTime(device, f"{self._cmd_syntax}:TIMe") @property @@ -1117,42 +1078,6 @@ def polarity(self) -> SearchSearchItemTriggerATimeoutPolarity: """ return self._polarity - @property - def source(self) -> SearchSearchItemTriggerATimeoutSource: - """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - - Description: - - When searching using the TIMEOut search type, this command specifies the source. The - available sources are live channels, reference waveforms, the math waveform, or the - digital channels. The default is channel 1. The timeout search type is selected using - ``SEARCH:SEARCHX:TRIGGER:A:TYPE``. SEARCH is the search number, which is always 1. - - Usage: - - Using the ``.query()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query. - - Using the ``.verify(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query and raise an AssertionError if - the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce value`` command. - - SCPI Syntax: - ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - ``` - - Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` specifies to use the math waveform as the as the source waveform. - - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. - """ # noqa: E501 - return self._source - @property def time(self) -> SearchSearchItemTriggerATimeoutTime: """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. @@ -1495,13 +1420,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1516,8 +1439,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1558,13 +1480,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1657,6 +1577,12 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. (MDO4000/B/C + only.). """ # noqa: E501 @@ -1774,6 +1700,12 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -1868,8 +1800,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -2040,11 +1971,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2161,11 +2090,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2294,9 +2221,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2471,9 +2398,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -3952,6 +3879,9 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 @@ -4068,6 +3998,11 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -4852,13 +4787,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -4963,13 +4895,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -14527,7 +14456,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search number, which - is always 1, and B is the bus number (1-2). + is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and 1-2 for the + MDO3000. Usage: - Using the ``.query()`` method will send the @@ -14722,7 +14652,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search - number, which is always 1, and B is the bus number (1-2). + number, which is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and + 1-2 for the MDO3000. Usage: - Using the ``.query()`` method will send the @@ -16772,7 +16703,6 @@ def timeout(self) -> SearchSearchItemTriggerATimeout: Sub-properties: - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. - - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. """ return self._timeout diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/afg.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/afg.py index dcf99e6b..58ac4107 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/afg.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/afg.py @@ -789,8 +789,8 @@ class AfgArbitraryEmemPointsByteorder(SCPICmdWrite, SCPICmdRead): - ``:BYTEORDer This`` command specifies the byte order for the ``AFG:ARBITRARY:EMEM:POINTS?`` query when the ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` is set to BINary and when binary block data is sent for the ``AFG:ARBITRARY:EMEM:POINTS`` - command. LSB - Least significant byte first (little endian) MSB - Most significant byte - first (big endian) The default is LSB. This setting is non-volatile and is reset by + command. LSB - Least significant byte first (little endian) MSB - Most significant byte + first (big endian) The default is LSB. This setting is non-volatile and is reset by default setup or TekSecure. Refer to the ``AFG:ARBITRARY:EMEM:POINTS`` command description for more information. @@ -819,19 +819,20 @@ class AfgArbitraryEmemPoints(SCPICmdWrite, SCPICmdRead): Description: - Specifies which points to load into the AFG arbitrary waveform edit memory. The point data - to be loaded may be specified as an IEEE488.2 binary block with 4-byte floating point data - values, or as a comma-separated list of NR2 or NR3 data values. The data values must be in - the range of -1.0 to 1.0. The ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command is used when - the data is binary block format. The minimum number of points is 2 and maximum is 131072. - Upon successful transfer of the data points, the ``AFG:ARBITRARY:EMEM:NUMPOINTS`` query - will return the number of points loaded into arbitrary waveform edit memory and the - ``AFG:ARBITRARY:EMEM:FUNCTION`` query will return USER. Note that the output, if turned - on, will not change unless or until the AFG function is set to ARBitrary using the - ``AFG:FUNCTION`` command. Point values may be coerced to the nearest valid step size. The - query form returns the points stored in the AFG arbitrary waveform edit memory in the - format specified by the ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` command and, for binary - encoding, the byte order specified by the ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command. - Refer to the ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` command description for more information. + to be loaded may be specified as an IEEE488.2 binary block with 4-byte floating point + data values, or as a comma-separated list of NR2 or NR3 data values. The data values must + be in the range of -1.0 to 1.0. The ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command is + used when the data is binary block format. The minimum number of points is 2 and maximum + is 131072. Upon successful transfer of the data points, the + ``AFG:ARBITRARY:EMEM:NUMPOINTS`` query will return the number of points loaded into + arbitrary waveform edit memory and the ``AFG:ARBITRARY:EMEM:FUNCTION`` query will return + USER. Note that the output, if turned on, will not change unless or until the AFG function + is set to ARBitrary using the ``AFG:FUNCTION`` command. Point values may be coerced to the + nearest valid step size. The query form returns the points stored in the AFG arbitrary + waveform edit memory in the format specified by the ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` + command and, for binary encoding, the byte order specified by the + ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command. Refer to the + ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` command description for more information. Usage: - Using the ``.query()`` method will send the ``AFG:ARBitrary:EMEM:POINTS?`` query. @@ -868,8 +869,8 @@ def byteorder(self) -> AfgArbitraryEmemPointsByteorder: - ``:BYTEORDer This`` command specifies the byte order for the ``AFG:ARBITRARY:EMEM:POINTS?`` query when the ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` is set to BINary and when binary block data is sent for the - ``AFG:ARBITRARY:EMEM:POINTS`` command. LSB - Least significant byte first (little - endian) MSB - Most significant byte first (big endian) The default is LSB. This + ``AFG:ARBITRARY:EMEM:POINTS`` command. LSB - Least significant byte first (little + endian) MSB - Most significant byte first (big endian) The default is LSB. This setting is non-volatile and is reset by default setup or TekSecure. Refer to the ``AFG:ARBITRARY:EMEM:POINTS`` command description for more information. @@ -1117,17 +1118,17 @@ def points(self) -> AfgArbitraryEmemPoints: Description: - Specifies which points to load into the AFG arbitrary waveform edit memory. The point - data to be loaded may be specified as an IEEE488.2 binary block with 4-byte floating - point data values, or as a comma-separated list of NR2 or NR3 data values. The data + data to be loaded may be specified as an IEEE488.2 binary block with 4-byte floating + point data values, or as a comma-separated list of NR2 or NR3 data values. The data values must be in the range of -1.0 to 1.0. The - ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command is used when the data is binary block + ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command is used when the data is binary block format. The minimum number of points is 2 and maximum is 131072. Upon successful transfer of the data points, the ``AFG:ARBITRARY:EMEM:NUMPOINTS`` query will return the number of points loaded into arbitrary waveform edit memory and the ``AFG:ARBITRARY:EMEM:FUNCTION`` query will return USER. Note that the output, if turned on, will not change unless or until the AFG function is set to ARBitrary using the ``AFG:FUNCTION`` command. Point values may be coerced to the nearest valid step - size. The query form returns the points stored in the AFG arbitrary waveform edit + size. The query form returns the points stored in the AFG arbitrary waveform edit memory in the format specified by the ``AFG:ARBITRARY:EMEM:POINTS:ENCDG`` command and, for binary encoding, the byte order specified by the ``AFG:ARBITRARY:EMEM:POINTS:BYTEORDER`` command. Refer to the diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/ch.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/ch.py index 454b7115..aa46e408 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/ch.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/ch.py @@ -596,7 +596,7 @@ class ChannelProbeCalibrateCalibratable(SCPICmdRead): """The ``CH:PRObe:CALibrate:CALIBRATABLe`` command. Description: - - This query returns the state of the probe attached to channel 1-4, either 0 if the probe + - This query returns the state of the probe attached to channel 1-4, either 0 if the probe is not calibratable, or 1 if the probe is calibratable. The channel is specified by x, which can range from 1 through 4. @@ -650,7 +650,7 @@ def calibratable(self) -> ChannelProbeCalibrateCalibratable: """Return the ``CH:PRObe:CALibrate:CALIBRATABLe`` command. Description: - - This query returns the state of the probe attached to channel 1-4, either 0 if the + - This query returns the state of the probe attached to channel 1-4, either 0 if the probe is not calibratable, or 1 if the probe is calibratable. The channel is specified by x, which can range from 1 through 4. diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/data.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/data.py index b64123f2..bb38d7bf 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/data.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/data.py @@ -152,15 +152,13 @@ class DataSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies which analog channel waveform data will be transferred from the - oscilloscope to the controller, channels 1 through 4. x has a minimum of 1 and a maximum - of 4. + oscilloscope to the controller, channels 1 through 4. - ``MATH`` specifies that the Math waveform data will be transferred from the oscilloscope to the controller. - ``REF`` specifies which Reference waveform data will be transferred from the - oscilloscope to the controller. x has a minimum of 1 and a maximum of 4. + oscilloscope to the controller. - ``D`` specifies which digital channel waveform data will be transferred from the - oscilloscope to the controller. (Requires installation of option 3-MSO.) x has a minimum - of 0 and a maximum of 15. + oscilloscope to the controller. (Requires installation of option 3-MSO.). - ``DIGital`` specifies that the Digital Collection waveform data will be transferred from the oscilloscope to the controller. (Requires installation of option 3-MSO.). - ``RF_NORMal`` specify that the RF data will be transferred from the oscilloscope to the @@ -201,7 +199,7 @@ class DataEncdg(SCPICmdWrite, SCPICmdRead): values for Digital Collection data with 4 or 8 bytes per point. The maximum number of ASCII data points that can be queried using the CURVe? query is 1 million points. If more than 1 million points are desired, you must use one of the binary encodings. If ASCII is - the value, then ``BN_Fmtand`` ``BYT_Or`` are ignored. + the value, then ``BN_Fmt`` and ``BYT_Or`` are ignored. - ``FAStest`` specifies the encoding which results in the fastest waveform data transfer rate. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BIN_Fmt RI`` and ``WFMOutpre:BYT_Or MSB``. @@ -218,14 +216,14 @@ class DataEncdg(SCPICmdWrite, SCPICmdRead): range of data values is 0 to 65,535. The center of the screen is 127 for 1-byte data and is 32768 for 2-byte data. The upper limit is the top of the screen and the lower limit is the bottom of the screen. This sets the following: - ``:WFMOutpre:ENCdg BINary``,``:WFMOutpre:BN_Fmt RPand`` ``WFMOutpre:BYT_Or MSB``. + ``:WFMOutpre:ENCdg BINary``,``:WFMOutpre:BN_Fmt RP`` and ``WFMOutpre:BYT_Or MSB``. - ``SRIbinary`` specifies the signed integer format. It is the same as RIBinary except that the byte order is swapped, meaning that the least significant byte is transferred first. - This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BIN_Fmt RIand`` + This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BIN_Fmt RI`` and ``WFMOutpre:BYT_Or LSB``. - ``SRPbinary`` specifies the positive integer format. It is the same as RPBinary except that the byte order is swapped, meaning that the least significant byte is transferred - first. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BN_Fmt RPand`` + first. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BN_Fmt RP`` and ``WFMOutpre:BYT_Or LSB``. - ``FPbinary`` specifies floating point binary. It automatically forces ``DATa:WIDTH`` to 4 and ``BYT_OR`` to MSB (most significant byte transmitted first). @@ -357,7 +355,7 @@ def encdg(self) -> DataEncdg: hexadecimal values for Digital Collection data with 4 or 8 bytes per point. The maximum number of ASCII data points that can be queried using the CURVe? query is 1 million points. If more than 1 million points are desired, you must use one of the - binary encodings. If ASCII is the value, then ``BN_Fmtand`` ``BYT_Or`` are ignored. + binary encodings. If ASCII is the value, then ``BN_Fmt`` and ``BYT_Or`` are ignored. - ``FAStest`` specifies the encoding which results in the fastest waveform data transfer rate. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BIN_Fmt RI`` and ``WFMOutpre:BYT_Or MSB``. @@ -374,15 +372,15 @@ def encdg(self) -> DataEncdg: range of data values is 0 to 65,535. The center of the screen is 127 for 1-byte data and is 32768 for 2-byte data. The upper limit is the top of the screen and the lower limit is the bottom of the screen. This sets the following: - ``:WFMOutpre:ENCdg BINary``,``:WFMOutpre:BN_Fmt RPand`` ``WFMOutpre:BYT_Or MSB``. + ``:WFMOutpre:ENCdg BINary``,``:WFMOutpre:BN_Fmt RP`` and ``WFMOutpre:BYT_Or MSB``. - ``SRIbinary`` specifies the signed integer format. It is the same as RIBinary except that the byte order is swapped, meaning that the least significant byte is transferred - first. This sets the following: ``WFMOutpre:ENCdg BINary``, - ``WFMOutpre:BIN_Fmt RIand`` ``WFMOutpre:BYT_Or LSB``. + first. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BIN_Fmt RI`` + and ``WFMOutpre:BYT_Or LSB``. - ``SRPbinary`` specifies the positive integer format. It is the same as RPBinary except that the byte order is swapped, meaning that the least significant byte is transferred - first. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BN_Fmt RPand`` - ``WFMOutpre:BYT_Or LSB``. + first. This sets the following: ``WFMOutpre:ENCdg BINary``, ``WFMOutpre:BN_Fmt RP`` + and ``WFMOutpre:BYT_Or LSB``. - ``FPbinary`` specifies floating point binary. It automatically forces ``DATa:WIDTH`` to 4 and ``BYT_OR`` to MSB (most significant byte transmitted first). - ``SFPbinary`` specifies floating point binary. It automatically forces ``DATa:WIDTH`` @@ -416,15 +414,13 @@ def source(self) -> DataSource: Info: - ``CH`` specifies which analog channel waveform data will be transferred from the - oscilloscope to the controller, channels 1 through 4. x has a minimum of 1 and a - maximum of 4. + oscilloscope to the controller, channels 1 through 4. - ``MATH`` specifies that the Math waveform data will be transferred from the oscilloscope to the controller. - ``REF`` specifies which Reference waveform data will be transferred from the - oscilloscope to the controller. x has a minimum of 1 and a maximum of 4. + oscilloscope to the controller. - ``D`` specifies which digital channel waveform data will be transferred from the - oscilloscope to the controller. (Requires installation of option 3-MSO.) x has a - minimum of 0 and a maximum of 15. + oscilloscope to the controller. (Requires installation of option 3-MSO.). - ``DIGital`` specifies that the Digital Collection waveform data will be transferred from the oscilloscope to the controller. (Requires installation of option 3-MSO.). - ``RF_NORMal`` specify that the RF data will be transferred from the oscilloscope to diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/math1.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/math1.py index 6904c96a..004f1d08 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/math1.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/math1.py @@ -422,7 +422,7 @@ class Math1HorizontalScale(SCPICmdWrite, SCPICmdRead): Description: - This command specifies the math horizontal display scale for FFT or for dual math waveforms that have source waveforms that are reference waveforms. The horizontal scale of - a dual math waveform with a channel source waveform is set through the command. + a dual math waveform with a channel source waveform is set through the command. Usage: - Using the ``.query()`` method will send the ``MATH1:HORizontal:SCAle?`` query. @@ -682,7 +682,7 @@ class Math1Autoscale(SCPICmdWrite, SCPICmdRead): Info: - ``1`` or ON enables automatic vertical scaling of the math waveform when the RF reference level falls below -25.0 dBm. Reference levels greater than or equal to -25.0 dBm cause the - probe to go into BYPassmode. The reference level is set/queried using the command + probe to go into BYPass mode. The reference level is set/queried using the command ``RF:REFLevel``. - ``0`` or OFF disables math autoscaling. """ @@ -748,7 +748,7 @@ def autoscale(self) -> Math1Autoscale: Info: - ``1`` or ON enables automatic vertical scaling of the math waveform when the RF reference level falls below -25.0 dBm. Reference levels greater than or equal to -25.0 - dBm cause the probe to go into BYPassmode. The reference level is set/queried using + dBm cause the probe to go into BYPass mode. The reference level is set/queried using the command ``RF:REFLevel``. - ``0`` or OFF disables math autoscaling. """ diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/power.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/power.py index e78dacb8..0091c226 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/power.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/power.py @@ -268,8 +268,8 @@ class PowerVoltagesource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` sets the analog channel 1-4 or reference waveform 1-4 as the voltage source. x - has a minimum of 1 and a maximum of 4. + - ``CH`` sets the analog channel as the voltage source. + - ``REF`` sets the reference waveform as the voltage source. """ @@ -6764,8 +6764,9 @@ class PowerHarmonicsResultsHarItemLimit(SCPICmdRead): Description: - The IEC and MIL standards specify a limit for each harmonic magnitude. Returns the limit - in absolute units, or as a percentage of the fundamental as specified by the standard. IEC - Class C (Table 2) and MIL standards specify the limit as a percentage of the fundamental. + in absolute units, or as a percentage of the fundamental as specified by the standard. + IEC Class C (Table 2) and MIL standards specify the limit as a percentage of the + fundamental. Usage: - Using the ``.query()`` method will send the ``POWer:HARMonics:RESults:HAR:LIMit?`` @@ -8426,10 +8427,8 @@ class PowerGatesource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` sets an analog channel as the gate source. x has a minimum of 1 and a maximum of - 4. - - ``REF`` sets a reference waveform as the gate source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` sets an analog channel as the gate source. + - ``REF`` sets a reference waveform as the gate source. - ``NONe`` is set when the gate source is not used in the application. """ @@ -8479,10 +8478,8 @@ class PowerCurrentsource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` sets an analog channel as the current source. x has a minimum of 1 and a maximum - of 4. - - ``REF`` sets a reference waveform as the current source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` sets an analog channel as the current source. + - ``REF`` sets a reference waveform as the current source. """ @@ -8552,10 +8549,8 @@ def currentsource(self) -> PowerCurrentsource: ``` Info: - - ``CH`` sets an analog channel as the current source. x has a minimum of 1 and a - maximum of 4. - - ``REF`` sets a reference waveform as the current source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` sets an analog channel as the current source. + - ``REF`` sets a reference waveform as the current source. """ return self._currentsource @@ -8606,10 +8601,8 @@ def gatesource(self) -> PowerGatesource: ``` Info: - - ``CH`` sets an analog channel as the gate source. x has a minimum of 1 and a - maximum of 4. - - ``REF`` sets a reference waveform as the gate source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` sets an analog channel as the gate source. + - ``REF`` sets a reference waveform as the gate source. - ``NONe`` is set when the gate source is not used in the application. """ return self._gatesource @@ -8911,7 +8904,7 @@ def voltagesource(self) -> PowerVoltagesource: ``` Info: - - ``CH`` sets the analog channel 1-4 or reference waveform 1-4 as the voltage source. - x has a minimum of 1 and a maximum of 4. + - ``CH`` sets the analog channel as the voltage source. + - ``REF`` sets the reference waveform as the voltage source. """ return self._voltagesource diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/vidpic.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/vidpic.py index 4c1a3ca6..42e08593 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/vidpic.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/vidpic.py @@ -93,8 +93,7 @@ class VidpicSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specify which channel to use for the video picture source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specify which channel to use for the video picture source waveform. """ @@ -167,7 +166,7 @@ class VidpicLocationStartPixel(SCPICmdWrite, SCPICmdRead): nominally 63.5us duration (10.9us blanking + 52.6us active video) that can be sampled from 1MS/s to 100MS/s, giving from 52.6 to 5260 video samples or 'pixels' per output line. The start pixel is the starting sample in each line; it is limited to a single line at the - current sample rate, i.e. ranges between -10.9 to 52.6 and -1090 to +5260. + current sample rate, i.e. ranges between -10.9 to 52.6 and -1090 to +5260. Usage: - Using the ``.query()`` method will send the ``VIDPic:LOCation:STARt:PIXel?`` query. @@ -255,8 +254,8 @@ def pixel(self) -> VidpicLocationStartPixel: of nominally 63.5us duration (10.9us blanking + 52.6us active video) that can be sampled from 1MS/s to 100MS/s, giving from 52.6 to 5260 video samples or 'pixels' per output line. The start pixel is the starting sample in each line; it is limited to a - single line at the current sample rate, i.e. ranges between -10.9 to 52.6 and -1090 to - +5260. + single line at the current sample rate, i.e. ranges between -10.9 to 52.6 and -1090 + to +5260. Usage: - Using the ``.query()`` method will send the ``VIDPic:LOCation:STARt:PIXel?`` query. @@ -829,8 +828,7 @@ def source(self) -> VidpicSource: ``` Info: - - ``CH`` specify which channel to use for the video picture source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specify which channel to use for the video picture source waveform. """ return self._source diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/wfminpre.py b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/wfminpre.py index d02c0ef3..e23e82c5 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/wfminpre.py +++ b/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/wfminpre.py @@ -87,7 +87,7 @@ class WfminpreYzero(SCPICmdWrite, SCPICmdRead): Info: - ```` is a floating point number that specifies the offset in in units specified by - the ``WFMInpre:YUNitcommand`` (YUNits). + the ``WFMInpre:YUNit`` command (YUNits). """ @@ -1278,6 +1278,6 @@ def yzero(self) -> WfminpreYzero: Info: - ```` is a floating point number that specifies the offset in in units specified - by the ``WFMInpre:YUNitcommand`` (YUNits). + by the ``WFMInpre:YUNit`` command (YUNits). """ return self._yzero diff --git a/src/tm_devices/commands/gen_1lxxm9_msomdodpo/bus.py b/src/tm_devices/commands/gen_1lxxm9_msomdodpo/bus.py new file mode 100644 index 00000000..e1083bb1 --- /dev/null +++ b/src/tm_devices/commands/gen_1lxxm9_msomdodpo/bus.py @@ -0,0 +1,7777 @@ +# pylint: disable=line-too-long +"""The bus commands module. + +These commands are used in the following models: +DPO4K, DPO4KB, MDO4K, MSO4K + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - BUS:B:ARINC429A:BITRate {LOW|HI|} + - BUS:B:ARINC429A:BITRate? + - BUS:B:ARINC429A:DATA:FORMAT {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATA:FORMAT? + - BUS:B:ARINC429A:POLarity {NORMal|INVERTed} + - BUS:B:ARINC429A:POLarity? + - BUS:B:ARINC429A:SOUrce {CH|MATH|REF} + - BUS:B:ARINC429A:SOUrce? + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + - BUS:B:AUDio:CHANnel:SIZe + - BUS:B:AUDio:CHANnel:SIZe? + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISe} + - BUS:B:AUDio:CLOCk:POLarity? + - BUS:B:AUDio:CLOCk:SOUrce {CH|D} + - BUS:B:AUDio:CLOCk:SOUrce? + - BUS:B:AUDio:DATa:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:DATa:POLarity? + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + - BUS:B:AUDio:DATa:SOUrce {CH|D} + - BUS:B:AUDio:DATa:SOUrce? + - BUS:B:AUDio:DISplay:FORMat {BINary|HEXadecimal|SIGNEDDECimal} + - BUS:B:AUDio:DISplay:FORMat? + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + - BUS:B:AUDio:FRAMESync:POLarity {FALL|RISe} + - BUS:B:AUDio:FRAMESync:POLarity? + - BUS:B:AUDio:FRAMESync:SOUrce {CH|D} + - BUS:B:AUDio:FRAMESync:SOUrce? + - BUS:B:AUDio:TYPe {I2S|LJ|RJ|TDM} + - BUS:B:AUDio:TYPe? + - BUS:B:AUDio:WORDSel:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:WORDSel:POLarity? + - BUS:B:AUDio:WORDSel:SOUrce {CH|D} + - BUS:B:AUDio:WORDSel:SOUrce? + - BUS:B:CAN:BITRate + - BUS:B:CAN:BITRate? + - BUS:B:CAN:FD:BITRate + - BUS:B:CAN:FD:BITRate? + - BUS:B:CAN:FD:STANDard {ISO | NONISO} string + - BUS:B:CAN:FD:STANDard? + - BUS:B:CAN:PRObe {CANH|CANL|RX|TX|DIFFerential} + - BUS:B:CAN:PRObe? + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + - BUS:B:CAN:SOUrce {CH|D} + - BUS:B:CAN:SOUrce? + - BUS:B:CAN:STANDard {CAN2X|CANFD} string + - BUS:B:CAN:STANDard? + - BUS:B:DISplay:FORMat {BINary|HEXadecimal|ASCII|MIXed|MIXED2|BLOCKHEX} + - BUS:B:DISplay:FORMat? + - BUS:B:DISplay:TYPe {BUS|BOTh} + - BUS:B:DISplay:TYPe? + - BUS:B:ETHERnet:PROTOcol {IPv4|OTHER} + - BUS:B:ETHERnet:PROTOcol? + - BUS:B:ETHERnet:PRObe {DIFFerential|SINGleended} + - BUS:B:ETHERnet:PRObe? + - BUS:B:ETHERnet:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DIFFerential? + - BUS:B:ETHERnet:SOUrce:DMINus {CH|D} + - BUS:B:ETHERnet:SOUrce:DMINus? + - BUS:B:ETHERnet:TYPe {ENET10BASET|ENET100BASETX} + - BUS:B:ETHERnet:TYPe? + - BUS:B:FLEXray:BITRate + - BUS:B:FLEXray:BITRate? + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + - BUS:B:FLEXray:SOUrce {CH|D} + - BUS:B:FLEXray:SOUrce? + - BUS:B:I2C:ADDRess:RWINClude {ON|OFF|} + - BUS:B:I2C:ADDRess:RWINClude? + - BUS:B:I2C:CLOCk:SOUrce {CH|D} + - BUS:B:I2C:CLOCk:SOUrce? + - BUS:B:I2C:DATa:SOUrce {CH|D} + - BUS:B:I2C:DATa:SOUrce? + - BUS:B:I2C:SCLk:SOUrce {CH|D} + - BUS:B:I2C:SCLk:SOUrce? + - BUS:B:I2C:SDAta:SOUrce {CH|D} + - BUS:B:I2C:SDAta:SOUrce? + - BUS:B:LABel + - BUS:B:LABel? + - BUS:B:LIN:BITRate + - BUS:B:LIN:BITRate? + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + - BUS:B:LIN:MAXBytedelim + - BUS:B:LIN:MAXBytedelim? + - BUS:B:LIN:POLarity {NORMal|INVerted} + - BUS:B:LIN:POLarity? + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + - BUS:B:LIN:SOUrce {CH|D} + - BUS:B:LIN:SOUrce? + - BUS:B:LIN:STANDard {V1X|V2X|MIXed} + - BUS:B:LIN:STANDard? + - BUS:B:MIL1553B:POLarity {NORMal|INVERTed} + - BUS:B:MIL1553B:POLarity? + - BUS:B:MIL1553B:RESPonsetime:MAXimum + - BUS:B:MIL1553B:RESPonsetime:MAXimum? + - BUS:B:MIL1553B:RESPonsetime:MINimum + - BUS:B:MIL1553B:RESPonsetime:MINimum? + - BUS:B:MIL1553B:SOUrce {CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + - BUS:B:PARallel:BIT:SOUrce {CH|D} + - BUS:B:PARallel:BIT:SOUrce? + - BUS:B:PARallel:CLOCk:EDGE {EITher|RISing|FALling} + - BUS:B:PARallel:CLOCk:EDGE? + - BUS:B:PARallel:CLOCk:ISCLOCKed {YES|NO} + - BUS:B:PARallel:CLOCk:ISCLOCKed? + - BUS:B:PARallel:CLOCk:SOUrce {CH|D} + - BUS:B:PARallel:CLOCk:SOUrce? + - BUS:B:PARallel:WIDth + - BUS:B:PARallel:WIDth? + - BUS:B:POSition + - BUS:B:POSition? + - BUS:B:RS232C:BITRate + - BUS:B:RS232C:BITRate? + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + - BUS:B:RS232C:DELIMiter {NULl|LF|CR|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + - BUS:B:RS232C:DISplaymode {FRAme|PACKET} + - BUS:B:RS232C:DISplaymode? + - BUS:B:RS232C:PARity {NONe|EVEN|ODD} + - BUS:B:RS232C:PARity? + - BUS:B:RS232C:POLarity {NORMal|INVERTed} + - BUS:B:RS232C:POLarity? + - BUS:B:RS232C:RX:SOUrce {CH|D|Off} + - BUS:B:RS232C:RX:SOUrce? + - BUS:B:RS232C:TX:SOUrce {CH|D|Off} + - BUS:B:RS232C:TX:SOUrce? + - BUS:B:SPI:BITOrder {LSB|MSB} + - BUS:B:SPI:BITOrder? + - BUS:B:SPI:CLOCk:POLarity {FALL|RISe} + - BUS:B:SPI:CLOCk:POLarity? + - BUS:B:SPI:CLOCk:SOUrce {CH|D} + - BUS:B:SPI:CLOCk:SOUrce? + - BUS:B:SPI:DATa:IN:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:IN:POLarity? + - BUS:B:SPI:DATa:IN:SOUrce {CH|D} + - BUS:B:SPI:DATa:IN:SOUrce? + - BUS:B:SPI:DATa:MISO:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MISO:POLarity? + - BUS:B:SPI:DATa:MISO:SOUrce {CH|D} + - BUS:B:SPI:DATa:MISO:SOUrce? + - BUS:B:SPI:DATa:MOSI:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MOSI:POLarity? + - BUS:B:SPI:DATa:MOSI:SOUrce {CH|D} + - BUS:B:SPI:DATa:MOSI:SOUrce? + - BUS:B:SPI:DATa:OUT:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:OUT:POLarity? + - BUS:B:SPI:DATa:OUT:SOUrce {CH|D} + - BUS:B:SPI:DATa:OUT:SOUrce? + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + - BUS:B:SPI:FRAMING {SS|IDLEtime} + - BUS:B:SPI:FRAMING? + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + - BUS:B:SPI:SCLk:POLarity {FALL|RISe} + - BUS:B:SPI:SCLk:POLarity? + - BUS:B:SPI:SCLk:SOUrce {CH|D} + - BUS:B:SPI:SCLk:SOUrce? + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + - BUS:B:SPI:SELect:SOUrce {CH|D} + - BUS:B:SPI:SELect:SOUrce? + - BUS:B:SPI:SS:POLarity {LOW|HIGH} + - BUS:B:SPI:SS:POLarity? + - BUS:B:SPI:SS:SOUrce {CH|D} + - BUS:B:SPI:SS:SOUrce? + - BUS:B:STATE {ON|OFF|} + - BUS:B:STATE? + - BUS:B:TYPe {I2C|SPI|CAN|RS232C|PARallel|USB|LIN|FLEXRay|AUDio|ETHERnet|MIL1553B|ARINC429A} + - BUS:B:TYPe? + - BUS:B:USB:BITRate {LOW|FULL|HIGH} + - BUS:B:USB:BITRate? + - BUS:B:USB:PRObe {DIFFerential|SINGleended} + - BUS:B:USB:PRObe? + - BUS:B:USB:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:USB:SOUrce:DIFFerential? + - BUS:B:USB:SOUrce:DMINus {CH|D} + - BUS:B:USB:SOUrce:DMINus? + - BUS:B:USB:SOUrce:DPLUs {CH|D} + - BUS:B:USB:SOUrce:DPLUs? + - BUS:LOWerthreshold:CH {|ECL|TTL} + - BUS:LOWerthreshold:CH? + - BUS:LOWerthreshold:MATH {|ECL|TTL} + - BUS:LOWerthreshold:MATH1 {|ECL|TTL} + - BUS:LOWerthreshold:MATH1? + - BUS:LOWerthreshold:MATH? + - BUS:LOWerthreshold:REF {|ECL|TTL} + - BUS:LOWerthreshold:REF? + - BUS:THReshold:CH {ECL|TTL|} + - BUS:THReshold:CH? + - BUS:THReshold:D {|ECL|TTL} + - BUS:THReshold:D? + - BUS:UPPerthreshold:CH {|ECL|TTL} + - BUS:UPPerthreshold:CH? + - BUS:UPPerthreshold:MATH {|ECL|TTL} + - BUS:UPPerthreshold:MATH1 {|ECL|TTL} + - BUS:UPPerthreshold:MATH1? + - BUS:UPPerthreshold:MATH? + - BUS:UPPerthreshold:REF {|ECL|TTL} + - BUS:UPPerthreshold:REF? + - BUS? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedChannel, + ValidatedDigitalBit, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class BusUpperthresholdRefItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:REF`` command. + + Description: + - This command sets the upper threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:REF {|ECL|TTL} + - BUS:UPPerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + + +class BusUpperthresholdMath1(SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:MATH1`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH1 {|ECL|TTL} + - BUS:UPPerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + + +class BusUpperthresholdMath(SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:MATH`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH {|ECL|TTL} + - BUS:UPPerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + + +class BusUpperthresholdChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:CH`` command. + + Description: + - Sets the upper threshold for each analog channel (1-4). This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:CH {|ECL|TTL} + - BUS:UPPerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + + +class BusUpperthreshold(SCPICmdRead): + """The ``BUS:UPPerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``BUS:UPPerthreshold:CH`` command. + - ``.ref``: The ``BUS:UPPerthreshold:REF`` command. + - ``.math``: The ``BUS:UPPerthreshold:MATH`` command. + - ``.math1``: The ``BUS:UPPerthreshold:MATH1`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, BusUpperthresholdChannel] = DefaultDictPassKeyToFactory( + lambda x: BusUpperthresholdChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._ref: Dict[int, BusUpperthresholdRefItem] = DefaultDictPassKeyToFactory( + lambda x: BusUpperthresholdRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + self._math = BusUpperthresholdMath(device, f"{self._cmd_syntax}:MATH") + self._math1 = BusUpperthresholdMath1(device, f"{self._cmd_syntax}:MATH1") + + @property + def ch(self) -> Dict[int, BusUpperthresholdChannel]: + """Return the ``BUS:UPPerthreshold:CH`` command. + + Description: + - Sets the upper threshold for each analog channel (1-4). This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:CH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:CH {|ECL|TTL} + - BUS:UPPerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + return self._ch + + @property + def ref(self) -> Dict[int, BusUpperthresholdRefItem]: + """Return the ``BUS:UPPerthreshold:REF`` command. + + Description: + - This command sets the upper threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:REF {|ECL|TTL} + - BUS:UPPerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + return self._ref + + @property + def math(self) -> BusUpperthresholdMath: + """Return the ``BUS:UPPerthreshold:MATH`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH {|ECL|TTL} + - BUS:UPPerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + return self._math + + @property + def math1(self) -> BusUpperthresholdMath1: + """Return the ``BUS:UPPerthreshold:MATH1`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH1?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH1 {|ECL|TTL} + - BUS:UPPerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + return self._math1 + + +class BusThresholdDigitalBit(ValidatedDigitalBit, SCPICmdWrite, SCPICmdRead): + """The ``BUS:THReshold:D`` command. + + Description: + - This command specifies the threshold for digital channel , where x is the digital + channel number (0-15). This will apply to all Search and Trigger Types that use the + channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:D?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:D?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:D value`` command. + + SCPI Syntax: + ``` + - BUS:THReshold:D {|ECL|TTL} + - BUS:THReshold:D? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + + +class BusThresholdChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``BUS:THReshold:CH`` command. + + Description: + - This command specifies the threshold for analog channel , where x is the channel number + (1-4). This setting applies to all trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:CH?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:CH value`` command. + + SCPI Syntax: + ``` + - BUS:THReshold:CH {ECL|TTL|} + - BUS:THReshold:CH? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a TTL preset high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + + +class BusThreshold(SCPICmdRead): + """The ``BUS:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``BUS:THReshold:CH`` command. + - ``.d``: The ``BUS:THReshold:D`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, BusThresholdChannel] = DefaultDictPassKeyToFactory( + lambda x: BusThresholdChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._d: Dict[int, BusThresholdDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: BusThresholdDigitalBit(device, f"{self._cmd_syntax}:D{x}") + ) + + @property + def ch(self) -> Dict[int, BusThresholdChannel]: + """Return the ``BUS:THReshold:CH`` command. + + Description: + - This command specifies the threshold for analog channel , where x is the channel + number (1-4). This setting applies to all trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:THReshold:CH {ECL|TTL|} + - BUS:THReshold:CH? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a TTL preset high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + return self._ch + + @property + def d(self) -> Dict[int, BusThresholdDigitalBit]: + """Return the ``BUS:THReshold:D`` command. + + Description: + - This command specifies the threshold for digital channel , where x is the digital + channel number (0-15). This will apply to all Search and Trigger Types that use the + channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:D?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:D?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:D value`` command. + + SCPI Syntax: + ``` + - BUS:THReshold:D {|ECL|TTL} + - BUS:THReshold:D? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + return self._d + + +class BusLowerthresholdRefItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:REF`` command. + + Description: + - This command sets the lower threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:REF {|ECL|TTL} + - BUS:LOWerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + + +class BusLowerthresholdMath1(SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:MATH1`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH1 {|ECL|TTL} + - BUS:LOWerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + + +class BusLowerthresholdMath(SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:MATH`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH {|ECL|TTL} + - BUS:LOWerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + + +class BusLowerthresholdChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:CH`` command. + + Description: + - This command sets the lower threshold for each channel. This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:CH {|ECL|TTL} + - BUS:LOWerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + + +class BusLowerthreshold(SCPICmdRead): + """The ``BUS:LOWerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``BUS:LOWerthreshold:CH`` command. + - ``.ref``: The ``BUS:LOWerthreshold:REF`` command. + - ``.math``: The ``BUS:LOWerthreshold:MATH`` command. + - ``.math1``: The ``BUS:LOWerthreshold:MATH1`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, BusLowerthresholdChannel] = DefaultDictPassKeyToFactory( + lambda x: BusLowerthresholdChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._ref: Dict[int, BusLowerthresholdRefItem] = DefaultDictPassKeyToFactory( + lambda x: BusLowerthresholdRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + self._math = BusLowerthresholdMath(device, f"{self._cmd_syntax}:MATH") + self._math1 = BusLowerthresholdMath1(device, f"{self._cmd_syntax}:MATH1") + + @property + def ch(self) -> Dict[int, BusLowerthresholdChannel]: + """Return the ``BUS:LOWerthreshold:CH`` command. + + Description: + - This command sets the lower threshold for each channel. This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:CH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:CH {|ECL|TTL} + - BUS:LOWerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + return self._ch + + @property + def ref(self) -> Dict[int, BusLowerthresholdRefItem]: + """Return the ``BUS:LOWerthreshold:REF`` command. + + Description: + - This command sets the lower threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:REF {|ECL|TTL} + - BUS:LOWerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + return self._ref + + @property + def math(self) -> BusLowerthresholdMath: + """Return the ``BUS:LOWerthreshold:MATH`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH {|ECL|TTL} + - BUS:LOWerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + return self._math + + @property + def math1(self) -> BusLowerthresholdMath1: + """Return the ``BUS:LOWerthreshold:MATH1`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH1?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH1 {|ECL|TTL} + - BUS:LOWerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + return self._math1 + + +class BusBItemUsbSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DPLUs`` command. + + Description: + - This command specifies the source for the USB D+ input. If you are using single-ended + probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DPLUs {CH|D} + - BUS:B:USB:SOUrce:DPLUs? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for D+ input. + - ``D`` specifies a digital channel as the source waveform for D+ input. (Requires option + 3-MSO.). + """ + + +class BusBItemUsbSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DMINus`` command. + + Description: + - This command specifies the source for the USB bus D- input. If you are using single-ended + probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DMINus {CH|D} + - BUS:B:USB:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for the D- input. + - ``D`` specifies a digital channel as the source waveform for the D- input. (Requires + option 3-MSO.). + """ + + +class BusBItemUsbSourceDifferential(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the source waveform for the USB bus when using a differential + probe. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DIFFerential?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DIFFerential?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:USB:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:USB:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies an analog waveform as the source. This channel should have an attached + differential probe. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemUsbSource(SCPICmdRead): + """The ``BUS:B:USB:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.differential``: The ``BUS:B:USB:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:USB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:USB:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._differential = BusBItemUsbSourceDifferential( + device, f"{self._cmd_syntax}:DIFFerential" + ) + self._dminus = BusBItemUsbSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemUsbSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def differential(self) -> BusBItemUsbSourceDifferential: + """Return the ``BUS:B:USB:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the source waveform for the USB bus when using a differential + probe. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DIFFerential?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:USB:SOUrce:DIFFerential?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:USB:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:USB:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies an analog waveform as the source. This channel should have an + attached differential probe. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._differential + + @property + def dminus(self) -> BusBItemUsbSourceDminus: + """Return the ``BUS:B:USB:SOUrce:DMINus`` command. + + Description: + - This command specifies the source for the USB bus D- input. If you are using + single-ended probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DMINus {CH|D} + - BUS:B:USB:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for the D- input. + - ``D`` specifies a digital channel as the source waveform for the D- input. + (Requires option 3-MSO.). + """ + return self._dminus + + @property + def dplus(self) -> BusBItemUsbSourceDplus: + """Return the ``BUS:B:USB:SOUrce:DPLUs`` command. + + Description: + - This command specifies the source for the USB D+ input. If you are using single-ended + probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DPLUs {CH|D} + - BUS:B:USB:SOUrce:DPLUs? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for D+ input. + - ``D`` specifies a digital channel as the source waveform for D+ input. (Requires + option 3-MSO.). + """ + return self._dplus + + +class BusBItemUsbProbe(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:PRObe`` command. + + Description: + - This command specifies the type of probe connected to the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:PRObe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:PRObe {DIFFerential|SINGleended} + - BUS:B:USB:PRObe? + ``` + + Info: + - ``DIFFerential`` indicates the bus probe is a differential probe. + - ``SINGleended`` indicates the bus probe is not a differential probe. + """ + + +class BusBItemUsbBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:BITRate`` command. + + Description: + - This command specifies the bit rate for the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:BITRate {LOW|FULL|HIGH} + - BUS:B:USB:BITRate? + ``` + + Info: + - ``LOW`` indicates the bit rate is 1.5 Mbps. + - ``FULL`` indicates the bit rate is 12 Mbps. + - ``HIGH`` indicates the bit rate is 480 Mbps. + """ + + +class BusBItemUsb(SCPICmdRead): + """The ``BUS:B:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:USB:BITRate`` command. + - ``.probe``: The ``BUS:B:USB:PRObe`` command. + - ``.source``: The ``BUS:B:USB:SOUrce`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemUsbBitrate(device, f"{self._cmd_syntax}:BITRate") + self._probe = BusBItemUsbProbe(device, f"{self._cmd_syntax}:PRObe") + self._source = BusBItemUsbSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemUsbBitrate: + """Return the ``BUS:B:USB:BITRate`` command. + + Description: + - This command specifies the bit rate for the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:BITRate {LOW|FULL|HIGH} + - BUS:B:USB:BITRate? + ``` + + Info: + - ``LOW`` indicates the bit rate is 1.5 Mbps. + - ``FULL`` indicates the bit rate is 12 Mbps. + - ``HIGH`` indicates the bit rate is 480 Mbps. + """ + return self._bitrate + + @property + def probe(self) -> BusBItemUsbProbe: + """Return the ``BUS:B:USB:PRObe`` command. + + Description: + - This command specifies the type of probe connected to the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:PRObe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:PRObe {DIFFerential|SINGleended} + - BUS:B:USB:PRObe? + ``` + + Info: + - ``DIFFerential`` indicates the bus probe is a differential probe. + - ``SINGleended`` indicates the bus probe is not a differential probe. + """ + return self._probe + + @property + def source(self) -> BusBItemUsbSource: + """Return the ``BUS:B:USB:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.differential``: The ``BUS:B:USB:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:USB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:USB:SOUrce:DPLUs`` command. + """ + return self._source + + +class BusBItemType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:TYPe`` command. + + Description: + - This command specifies (or queries) the bus type. The supported bus types are dependent on + the oscilloscope model and the installed application models. With the exception of the + parallel bus, all bus types require installation of an application option. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:TYPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:TYPe {I2C|SPI|CAN|RS232C|PARallel|USB|LIN|FLEXRay|AUDio|ETHERnet|MIL1553B|ARINC429A} + - BUS:B:TYPe? + ``` + + Info: + - ``I2C`` specifies the Inter-IC bus. + - ``SPI`` specifies the Serial Peripheral Interface bus (not available on two-channel + models). + - ``CAN`` specifies the Controller Area Network bus. + - ``RS232C`` specifies the RS-232C bus. + - ``PARallel`` specifies the Parallel bus. + - ``USB`` specifies the USB bus. + - ``LIN`` specifies the LIN bus. + - ``FLEXRay`` specifies the FLexRay bus. + - ``AUDio`` specifies the audio bus. + - ``ETHERnet`` specifies the Ethernet bus. + - ``MIL1553B`` specifies the MIL-STD-1553 bus. + - ``ARINC429A`` specifies the Aeronautical Radio INC (specification 429) bus. + """ # noqa: E501 + + +class BusBItemState(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:STATE`` command. + + Description: + - This command specifies the on/off state of the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:STATE?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:STATE value`` command. + + SCPI Syntax: + ``` + - BUS:B:STATE {ON|OFF|} + - BUS:B:STATE? + ``` + + Info: + - ``ON`` or ≠ 0 turns on the bus. + - ``OFF`` or = 0 turns off the bus. + """ + + +class BusBItemSpiSsSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SS:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:SOUrce {CH|D} + - BUS:B:SPI:SS:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemSpiSsPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SS:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:POLarity {LOW|HIGH} + - BUS:B:SPI:SS:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiSs(SCPICmdRead): + """The ``BUS:B:SPI:SS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SS:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SS:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiSsPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiSsSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiSsPolarity: + """Return the ``BUS:B:SPI:SS:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:POLarity {LOW|HIGH} + - BUS:B:SPI:SS:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSsSource: + """Return the ``BUS:B:SPI:SS:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:SOUrce {CH|D} + - BUS:B:SPI:SS:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + return self._source + + +class BusBItemSpiSelectSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:SOUrce {CH|D} + - BUS:B:SPI:SELect:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemSpiSelectPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SELect:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiSelect(SCPICmdRead): + """The ``BUS:B:SPI:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SELect:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SELect:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiSelectPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiSelectSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiSelectPolarity: + """Return the ``BUS:B:SPI:SELect:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:SELect:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSelectSource: + """Return the ``BUS:B:SPI:SELect:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:SOUrce {CH|D} + - BUS:B:SPI:SELect:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + return self._source + + +class BusBItemSpiSclkSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:SOUrce {CH|D} + - BUS:B:SPI:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiSclkPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SCLk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:POLarity {FALL|RISe} + - BUS:B:SPI:SCLk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + + +class BusBItemSpiSclk(SCPICmdRead): + """The ``BUS:B:SPI:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SCLk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SCLk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiSclkPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiSclkSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiSclkPolarity: + """Return the ``BUS:B:SPI:SCLk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:POLarity {FALL|RISe} + - BUS:B:SPI:SCLk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSclkSource: + """Return the ``BUS:B:SPI:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:SOUrce {CH|D} + - BUS:B:SPI:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiIdletime(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:IDLETime`` command. + + Description: + - This command sets or queries the SPI idle time for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:IDLETime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:IDLETime?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:IDLETime value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` specifies the SPI idle time. + """ + + +class BusBItemSpiFraming(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:FRAMING`` command. + + Description: + - This command specifies the type of framing to use for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:FRAMING?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:FRAMING?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:FRAMING value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:FRAMING {SS|IDLEtime} + - BUS:B:SPI:FRAMING? + ``` + """ + + +class BusBItemSpiDataSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per word for the specified SPI bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the data size for the specified bus. The minimum value is 2 and maximum is + 32. + """ + + +class BusBItemSpiDataOutSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:SOUrce {CH|D} + - BUS:B:SPI:DATa:OUT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiDataOutPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:OUT:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:OUT:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + + +class BusBItemSpiDataOut(SCPICmdRead): + """The ``BUS:B:SPI:DATa:OUT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:OUT:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataOutPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataOutSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataOutPolarity: + """Return the ``BUS:B:SPI:DATa:OUT:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:OUT:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:OUT:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataOutSource: + """Return the ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:OUT:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:SOUrce {CH|D} + - BUS:B:SPI:DATa:OUT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiDataMosiSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:SOUrce {CH|D} + - BUS:B:SPI:DATa:MOSI:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiDataMosiPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MOSI:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + + +class BusBItemSpiDataMosi(SCPICmdRead): + """The ``BUS:B:SPI:DATa:MOSI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataMosiPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataMosiSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataMosiPolarity: + """Return the ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MOSI:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MOSI:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataMosiSource: + """Return the ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MOSI:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:SOUrce {CH|D} + - BUS:B:SPI:DATa:MOSI:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiDataMisoSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:SOUrce {CH|D} + - BUS:B:SPI:DATa:MISO:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + + +class BusBItemSpiDataMisoPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MISO:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MISO:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiDataMiso(SCPICmdRead): + """The ``BUS:B:SPI:DATa:MISO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MISO:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataMisoPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataMisoSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataMisoPolarity: + """Return the ``BUS:B:SPI:DATa:MISO:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MISO:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MISO:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataMisoSource: + """Return the ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MISO:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:SOUrce {CH|D} + - BUS:B:SPI:DATa:MISO:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + return self._source + + +class BusBItemSpiDataInSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:IN:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:SOUrce {CH|D} + - BUS:B:SPI:DATa:IN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + + +class BusBItemSpiDataInPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:IN:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:IN:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:IN:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiDataIn(SCPICmdRead): + """The ``BUS:B:SPI:DATa:IN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:IN:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:IN:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataInPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataInSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataInPolarity: + """Return the ``BUS:B:SPI:DATa:IN:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:IN:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:IN:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataInSource: + """Return the ``BUS:B:SPI:DATa:IN:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:SOUrce {CH|D} + - BUS:B:SPI:DATa:IN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + return self._source + + +class BusBItemSpiData(SCPICmdRead): + """The ``BUS:B:SPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.size``: The ``BUS:B:SPI:DATa:SIZe`` command. + - ``.in``: The ``BUS:B:SPI:DATa:IN`` command tree. + - ``.miso``: The ``BUS:B:SPI:DATa:MISO`` command tree. + - ``.out``: The ``BUS:B:SPI:DATa:OUT`` command tree. + - ``.mosi``: The ``BUS:B:SPI:DATa:MOSI`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemSpiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._in = BusBItemSpiDataIn(device, f"{self._cmd_syntax}:IN") + self._miso = BusBItemSpiDataMiso(device, f"{self._cmd_syntax}:MISO") + self._out = BusBItemSpiDataOut(device, f"{self._cmd_syntax}:OUT") + self._mosi = BusBItemSpiDataMosi(device, f"{self._cmd_syntax}:MOSI") + + @property + def size(self) -> BusBItemSpiDataSize: + """Return the ``BUS:B:SPI:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per word for the specified SPI bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the data size for the specified bus. The minimum value is 2 and maximum + is 32. + """ + return self._size + + @property + def in_(self) -> BusBItemSpiDataIn: + """Return the ``BUS:B:SPI:DATa:IN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:IN:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:IN:SOUrce`` command. + """ + return self._in + + @property + def miso(self) -> BusBItemSpiDataMiso: + """Return the ``BUS:B:SPI:DATa:MISO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MISO:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + """ + return self._miso + + @property + def out(self) -> BusBItemSpiDataOut: + """Return the ``BUS:B:SPI:DATa:OUT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:OUT:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + """ + return self._out + + @property + def mosi(self) -> BusBItemSpiDataMosi: + """Return the ``BUS:B:SPI:DATa:MOSI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + """ + return self._mosi + + +class BusBItemSpiClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:SOUrce {CH|D} + - BUS:B:SPI:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:POLarity {FALL|RISe} + - BUS:B:SPI:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + + +class BusBItemSpiClock(SCPICmdRead): + """The ``BUS:B:SPI:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiClockPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiClockPolarity: + """Return the ``BUS:B:SPI:CLOCk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:POLarity {FALL|RISe} + - BUS:B:SPI:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiClockSource: + """Return the ``BUS:B:SPI:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:SOUrce {CH|D} + - BUS:B:SPI:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiBitorder(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:BITOrder`` command. + + Description: + - This command sets or queries the SPI bit order for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:BITOrder value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:BITOrder {LSB|MSB} + - BUS:B:SPI:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``LSB`` specifies that each bit becomes the recovered value's new LSB, after shifting + previously recovered bits one place to the left. The decoding happens right to left. + - ``MSB`` specifies that each successive bit from the bus's data line becomes the new MSB of + the recovered value, shifting any previously recovered bits one place to the right. The + decoding happens left to right. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemSpi(SCPICmdRead): + """The ``BUS:B:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.bitorder``: The ``BUS:B:SPI:BITOrder`` command. + - ``.data``: The ``BUS:B:SPI:DATa`` command tree. + - ``.framing``: The ``BUS:B:SPI:FRAMING`` command. + - ``.idletime``: The ``BUS:B:SPI:IDLETime`` command. + - ``.clock``: The ``BUS:B:SPI:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:SPI:SCLk`` command tree. + - ``.select``: The ``BUS:B:SPI:SELect`` command tree. + - ``.ss``: The ``BUS:B:SPI:SS`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitorder = BusBItemSpiBitorder(device, f"{self._cmd_syntax}:BITOrder") + self._data = BusBItemSpiData(device, f"{self._cmd_syntax}:DATa") + self._framing = BusBItemSpiFraming(device, f"{self._cmd_syntax}:FRAMING") + self._idletime = BusBItemSpiIdletime(device, f"{self._cmd_syntax}:IDLETime") + self._clock = BusBItemSpiClock(device, f"{self._cmd_syntax}:CLOCk") + self._sclk = BusBItemSpiSclk(device, f"{self._cmd_syntax}:SCLk") + self._select = BusBItemSpiSelect(device, f"{self._cmd_syntax}:SELect") + self._ss = BusBItemSpiSs(device, f"{self._cmd_syntax}:SS") + + @property + def bitorder(self) -> BusBItemSpiBitorder: + """Return the ``BUS:B:SPI:BITOrder`` command. + + Description: + - This command sets or queries the SPI bit order for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:BITOrder {LSB|MSB} + - BUS:B:SPI:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``LSB`` specifies that each bit becomes the recovered value's new LSB, after shifting + previously recovered bits one place to the left. The decoding happens right to left. + - ``MSB`` specifies that each successive bit from the bus's data line becomes the new + MSB of the recovered value, shifting any previously recovered bits one place to the + right. The decoding happens left to right. + """ + return self._bitorder + + @property + def data(self) -> BusBItemSpiData: + """Return the ``BUS:B:SPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.size``: The ``BUS:B:SPI:DATa:SIZe`` command. + - ``.in``: The ``BUS:B:SPI:DATa:IN`` command tree. + - ``.miso``: The ``BUS:B:SPI:DATa:MISO`` command tree. + - ``.out``: The ``BUS:B:SPI:DATa:OUT`` command tree. + - ``.mosi``: The ``BUS:B:SPI:DATa:MOSI`` command tree. + """ + return self._data + + @property + def framing(self) -> BusBItemSpiFraming: + """Return the ``BUS:B:SPI:FRAMING`` command. + + Description: + - This command specifies the type of framing to use for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:FRAMING?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:FRAMING?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:FRAMING value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:FRAMING {SS|IDLEtime} + - BUS:B:SPI:FRAMING? + ``` + """ + return self._framing + + @property + def idletime(self) -> BusBItemSpiIdletime: + """Return the ``BUS:B:SPI:IDLETime`` command. + + Description: + - This command sets or queries the SPI idle time for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:IDLETime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:IDLETime?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:IDLETime value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` specifies the SPI idle time. + """ + return self._idletime + + @property + def clock(self) -> BusBItemSpiClock: + """Return the ``BUS:B:SPI:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def sclk(self) -> BusBItemSpiSclk: + """Return the ``BUS:B:SPI:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SCLk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SCLk:SOUrce`` command. + """ + return self._sclk + + @property + def select(self) -> BusBItemSpiSelect: + """Return the ``BUS:B:SPI:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SELect:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SELect:SOUrce`` command. + """ + return self._select + + @property + def ss(self) -> BusBItemSpiSs: + """Return the ``BUS:B:SPI:SS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SS:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SS:SOUrce`` command. + """ + return self._ss + + +class BusBItemRs232cTxSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:TX:SOUrce`` command. + + Description: + - This command specifies the TX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:TX:SOUrce {CH|D|Off} + - BUS:B:RS232C:TX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the TX source waveform. + - ``D`` specifies a digital channel as the TX source waveform. (Requires option 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + + +class BusBItemRs232cTx(SCPICmdRead): + """The ``BUS:B:RS232C:TX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:RS232C:TX:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemRs232cTxSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemRs232cTxSource: + """Return the ``BUS:B:RS232C:TX:SOUrce`` command. + + Description: + - This command specifies the TX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:TX:SOUrce {CH|D|Off} + - BUS:B:RS232C:TX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the TX source waveform. + - ``D`` specifies a digital channel as the TX source waveform. (Requires option + 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + return self._source + + +class BusBItemRs232cRxSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:RX:SOUrce`` command. + + Description: + - This command specifies the RX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:RX:SOUrce {CH|D|Off} + - BUS:B:RS232C:RX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the RX source waveform. + - ``D`` specifies a digital channel as the RX source waveform. (Requires option 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + + +class BusBItemRs232cRx(SCPICmdRead): + """The ``BUS:B:RS232C:RX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:RS232C:RX:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemRs232cRxSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemRs232cRxSource: + """Return the ``BUS:B:RS232C:RX:SOUrce`` command. + + Description: + - This command specifies the RX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:RX:SOUrce {CH|D|Off} + - BUS:B:RS232C:RX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the RX source waveform. + - ``D`` specifies a digital channel as the RX source waveform. (Requires option + 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + return self._source + + +class BusBItemRs232cPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:POLarity`` command. + + Description: + - This command specifies the polarity for the RS-232C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:POLarity {NORMal|INVERTed} + - BUS:B:RS232C:POLarity? + ``` + + Info: + - ``NORMal`` sets the polarity to positive. + - ``INVERTed`` sets the polarity to negative. + """ + + +class BusBItemRs232cParity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:PARity`` command. + + Description: + - This command sets or queries the RS-232C parity for bus , where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:PARity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:PARity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:PARity value`` command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:PARity {NONe|EVEN|ODD} + - BUS:B:RS232C:PARity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NONe`` specifies no parity. + - ``EVEN`` specifies even parity. + - ``ODD`` specifies odd parity. + """ + + +class BusBItemRs232cDisplaymode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DISplaymode`` command. + + Description: + - This command specifies the display mode for the RS-232 bus (frame or packet). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DISplaymode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DISplaymode?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DISplaymode value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DISplaymode {FRAme|PACKET} + - BUS:B:RS232C:DISplaymode? + ``` + + Info: + - ``FRAme`` displays each frame as a single entity. + - ``PACKET`` displays a group of frames terminated with a single frame defined by the + ``BUS:B:RS232C:DELImiter`` command or the front panel. + """ + + +class BusBItemRs232cDelimiter(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DELIMiter`` command. + + Description: + - This command specifies the delimiting value for a packet on the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DELIMiter?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DELIMiter?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DELIMiter value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DELIMiter {NULl|LF|CR|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + ``` + + Info: + - ``NULl`` specifies 0x00. + - ``LF`` specifies 0x0A. + - ``CR`` specifies 0x0D. + - ``XFF`` specifies 0xFF. + """ + + +class BusBItemRs232cDatabits(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DATABits`` command. + + Description: + - This command sets or queries the RS-232C data width for bus, where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DATABits?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DATABits?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DATABits value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + ``` + + Info: + - ``B`` is the number of the bus. + - ``7`` specifies the number of bits as 7 in the RS-232C data frame. + - ``8`` specifies the number of bits as 8 in the RS-232C data frame. + - ``9`` specifies the number of bits as 9 in the RS-232C data frame. + """ + + +class BusBItemRs232cBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:BITRate`` command. + + Description: + - This command specifies the bit rate for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:BITRate + - BUS:B:RS232C:BITRate? + ``` + + Info: + - ```` is the bit rate in bits-per-second. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemRs232c(SCPICmdRead): + """The ``BUS:B:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:RS232C:BITRate`` command. + - ``.databits``: The ``BUS:B:RS232C:DATABits`` command. + - ``.delimiter``: The ``BUS:B:RS232C:DELIMiter`` command. + - ``.displaymode``: The ``BUS:B:RS232C:DISplaymode`` command. + - ``.parity``: The ``BUS:B:RS232C:PARity`` command. + - ``.polarity``: The ``BUS:B:RS232C:POLarity`` command. + - ``.rx``: The ``BUS:B:RS232C:RX`` command tree. + - ``.tx``: The ``BUS:B:RS232C:TX`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemRs232cBitrate(device, f"{self._cmd_syntax}:BITRate") + self._databits = BusBItemRs232cDatabits(device, f"{self._cmd_syntax}:DATABits") + self._delimiter = BusBItemRs232cDelimiter(device, f"{self._cmd_syntax}:DELIMiter") + self._displaymode = BusBItemRs232cDisplaymode(device, f"{self._cmd_syntax}:DISplaymode") + self._parity = BusBItemRs232cParity(device, f"{self._cmd_syntax}:PARity") + self._polarity = BusBItemRs232cPolarity(device, f"{self._cmd_syntax}:POLarity") + self._rx = BusBItemRs232cRx(device, f"{self._cmd_syntax}:RX") + self._tx = BusBItemRs232cTx(device, f"{self._cmd_syntax}:TX") + + @property + def bitrate(self) -> BusBItemRs232cBitrate: + """Return the ``BUS:B:RS232C:BITRate`` command. + + Description: + - This command specifies the bit rate for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:BITRate + - BUS:B:RS232C:BITRate? + ``` + + Info: + - ```` is the bit rate in bits-per-second. You can enter any positive integer, and + the instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def databits(self) -> BusBItemRs232cDatabits: + """Return the ``BUS:B:RS232C:DATABits`` command. + + Description: + - This command sets or queries the RS-232C data width for bus, where the bus number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DATABits?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DATABits?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DATABits value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + ``` + + Info: + - ``B`` is the number of the bus. + - ``7`` specifies the number of bits as 7 in the RS-232C data frame. + - ``8`` specifies the number of bits as 8 in the RS-232C data frame. + - ``9`` specifies the number of bits as 9 in the RS-232C data frame. + """ + return self._databits + + @property + def delimiter(self) -> BusBItemRs232cDelimiter: + """Return the ``BUS:B:RS232C:DELIMiter`` command. + + Description: + - This command specifies the delimiting value for a packet on the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DELIMiter?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DELIMiter?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DELIMiter value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DELIMiter {NULl|LF|CR|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + ``` + + Info: + - ``NULl`` specifies 0x00. + - ``LF`` specifies 0x0A. + - ``CR`` specifies 0x0D. + - ``XFF`` specifies 0xFF. + """ + return self._delimiter + + @property + def displaymode(self) -> BusBItemRs232cDisplaymode: + """Return the ``BUS:B:RS232C:DISplaymode`` command. + + Description: + - This command specifies the display mode for the RS-232 bus (frame or packet). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DISplaymode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DISplaymode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DISplaymode value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DISplaymode {FRAme|PACKET} + - BUS:B:RS232C:DISplaymode? + ``` + + Info: + - ``FRAme`` displays each frame as a single entity. + - ``PACKET`` displays a group of frames terminated with a single frame defined by the + ``BUS:B:RS232C:DELImiter`` command or the front panel. + """ + return self._displaymode + + @property + def parity(self) -> BusBItemRs232cParity: + """Return the ``BUS:B:RS232C:PARity`` command. + + Description: + - This command sets or queries the RS-232C parity for bus , where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:PARity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:PARity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:PARity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:PARity {NONe|EVEN|ODD} + - BUS:B:RS232C:PARity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NONe`` specifies no parity. + - ``EVEN`` specifies even parity. + - ``ODD`` specifies odd parity. + """ + return self._parity + + @property + def polarity(self) -> BusBItemRs232cPolarity: + """Return the ``BUS:B:RS232C:POLarity`` command. + + Description: + - This command specifies the polarity for the RS-232C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:POLarity {NORMal|INVERTed} + - BUS:B:RS232C:POLarity? + ``` + + Info: + - ``NORMal`` sets the polarity to positive. + - ``INVERTed`` sets the polarity to negative. + """ + return self._polarity + + @property + def rx(self) -> BusBItemRs232cRx: + """Return the ``BUS:B:RS232C:RX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:RS232C:RX:SOUrce`` command. + """ + return self._rx + + @property + def tx(self) -> BusBItemRs232cTx: + """Return the ``BUS:B:RS232C:TX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:RS232C:TX:SOUrce`` command. + """ + return self._tx + + +class BusBItemPosition(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:POSition`` command. + + Description: + - This command specifies the position of the bus waveform on the display. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:POSition?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:POSition value`` command. + + SCPI Syntax: + ``` + - BUS:B:POSition + - BUS:B:POSition? + ``` + + Info: + - ```` is a floating point number that specifies the position of the bus waveform + on the display. + """ + + +class BusBItemParallelWidth(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:WIDth`` command. + + Description: + - This command specifies the number of bits to use for the width of the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:WIDth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:WIDth?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:WIDth value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:WIDth + - BUS:B:PARallel:WIDth? + ``` + + Info: + - ```` is the number of bits. + """ + + +class BusBItemParallelClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:SOUrce {CH|D} + - BUS:B:PARallel:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel to use the clock source waveform. + - ``D`` specifies a digital channels the clock source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemParallelClockIsclocked(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + + Description: + - Specifies the state of the clock function for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:ISCLOCKed value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:ISCLOCKed {YES|NO} + - BUS:B:PARallel:CLOCk:ISCLOCKed? + ``` + + Info: + - ``YES`` specifes that the parallel bus is clocked. + - ``NO`` specifes that the parallel bus is not clocked. + """ + + +class BusBItemParallelClockEdge(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:EDGE`` command. + + Description: + - Specifies the clock edge for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:CLOCk:EDGE value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:EDGE {EITher|RISing|FALling} + - BUS:B:PARallel:CLOCk:EDGE? + ``` + + Info: + - ``EIther`` specifies either edge as the clock edge. + - ``RISing`` specifies the rising edge as the clock edge. + - ``FALling`` specifies the falling edge as the clock edge. + """ + + +class BusBItemParallelClock(SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edge``: The ``BUS:B:PARallel:CLOCk:EDGE`` command. + - ``.isclocked``: The ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + - ``.source``: The ``BUS:B:PARallel:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = BusBItemParallelClockEdge(device, f"{self._cmd_syntax}:EDGE") + self._isclocked = BusBItemParallelClockIsclocked(device, f"{self._cmd_syntax}:ISCLOCKed") + self._source = BusBItemParallelClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def edge(self) -> BusBItemParallelClockEdge: + """Return the ``BUS:B:PARallel:CLOCk:EDGE`` command. + + Description: + - Specifies the clock edge for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:EDGE value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:EDGE {EITher|RISing|FALling} + - BUS:B:PARallel:CLOCk:EDGE? + ``` + + Info: + - ``EIther`` specifies either edge as the clock edge. + - ``RISing`` specifies the rising edge as the clock edge. + - ``FALling`` specifies the falling edge as the clock edge. + """ + return self._edge + + @property + def isclocked(self) -> BusBItemParallelClockIsclocked: + """Return the ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + + Description: + - Specifies the state of the clock function for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:ISCLOCKed value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:ISCLOCKed {YES|NO} + - BUS:B:PARallel:CLOCk:ISCLOCKed? + ``` + + Info: + - ``YES`` specifes that the parallel bus is clocked. + - ``NO`` specifes that the parallel bus is not clocked. + """ + return self._isclocked + + @property + def source(self) -> BusBItemParallelClockSource: + """Return the ``BUS:B:PARallel:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:SOUrce {CH|D} + - BUS:B:PARallel:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel to use the clock source waveform. + - ``D`` specifies a digital channels the clock source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemParallelBitItemSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:BIT:SOUrce`` command. + + Description: + - Specifies the bit source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:BIT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BIT:SOUrce {CH|D} + - BUS:B:PARallel:BIT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the bit source waveform. + - ``D`` specifies a digital channel as the bit source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemParallelBitItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``BUS:B:PARallel:BIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:PARallel:BIT:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemParallelBitItemSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemParallelBitItemSource: + """Return the ``BUS:B:PARallel:BIT:SOUrce`` command. + + Description: + - Specifies the bit source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:BIT:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BIT:SOUrce {CH|D} + - BUS:B:PARallel:BIT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the bit source waveform. + - ``D`` specifies a digital channel as the bit source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemParallel(SCPICmdRead): + """The ``BUS:B:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bit``: The ``BUS:B:PARallel:BIT`` command tree. + - ``.clock``: The ``BUS:B:PARallel:CLOCk`` command tree. + - ``.width``: The ``BUS:B:PARallel:WIDth`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bit: Dict[int, BusBItemParallelBitItem] = DefaultDictPassKeyToFactory( + lambda x: BusBItemParallelBitItem(device, f"{self._cmd_syntax}:BIT{x}") + ) + self._clock = BusBItemParallelClock(device, f"{self._cmd_syntax}:CLOCk") + self._width = BusBItemParallelWidth(device, f"{self._cmd_syntax}:WIDth") + + @property + def bit(self) -> Dict[int, BusBItemParallelBitItem]: + """Return the ``BUS:B:PARallel:BIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:PARallel:BIT:SOUrce`` command. + """ + return self._bit + + @property + def clock(self) -> BusBItemParallelClock: + """Return the ``BUS:B:PARallel:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``BUS:B:PARallel:CLOCk:EDGE`` command. + - ``.isclocked``: The ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + - ``.source``: The ``BUS:B:PARallel:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def width(self) -> BusBItemParallelWidth: + """Return the ``BUS:B:PARallel:WIDth`` command. + + Description: + - This command specifies the number of bits to use for the width of the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:WIDth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:WIDth?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:WIDth value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:WIDth + - BUS:B:PARallel:WIDth? + ``` + + Info: + - ```` is the number of bits. + """ + return self._width + + +class BusBItemMil1553bSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:SOUrce`` command. + + Description: + - This command specifies the source for differential input for the MIL-STD-1553 bus. The + supported source waveforms are channels 1-4, math waveform, and reference waveforms 1-4. + The default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:SOUrce {CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for differential input. + - ``MATH`` specifies the math waveform as the MIL-STD-1553 bus source for differential + input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + + +class BusBItemMil1553bResponsetimeMinimum(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + + Description: + - This command sets or queries the minimum response time to a valid command issued for the + specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MINimum + - BUS:B:MIL1553B:RESPonsetime:MINimum? + ``` + + Info: + - ``B`` is the Bus number. + - ```` is a floating point number that specifies the minimum response time, in seconds. + """ + + +class BusBItemMil1553bResponsetimeMaximum(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + + Description: + - This command sets or queries the maximum response time to a valid command issued for the + specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MAXimum + - BUS:B:MIL1553B:RESPonsetime:MAXimum? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a floating point number that specifies the maximum response time, in seconds. + """ + + +class BusBItemMil1553bResponsetime(SCPICmdRead): + """The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.maximum``: The ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + - ``.minimum``: The ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = BusBItemMil1553bResponsetimeMaximum(device, f"{self._cmd_syntax}:MAXimum") + self._minimum = BusBItemMil1553bResponsetimeMinimum(device, f"{self._cmd_syntax}:MINimum") + + @property + def maximum(self) -> BusBItemMil1553bResponsetimeMaximum: + """Return the ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + + Description: + - This command sets or queries the maximum response time to a valid command issued for + the specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MAXimum + - BUS:B:MIL1553B:RESPonsetime:MAXimum? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a floating point number that specifies the maximum response time, in + seconds. + """ + return self._maximum + + @property + def minimum(self) -> BusBItemMil1553bResponsetimeMinimum: + """Return the ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + + Description: + - This command sets or queries the minimum response time to a valid command issued for + the specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MINimum + - BUS:B:MIL1553B:RESPonsetime:MINimum? + ``` + + Info: + - ``B`` is the Bus number. + - ```` is a floating point number that specifies the minimum response time, in + seconds. + """ + return self._minimum + + +class BusBItemMil1553bPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:POLarity`` command. + + Description: + - This command sets or queries the source polarity for the specified MIL-STD-1553 bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:POLarity {NORMal|INVERTed} + - BUS:B:MIL1553B:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies normal polarity. + - ``INVERTed`` specifies inverted polarity. + """ + + +class BusBItemMil1553b(SCPICmdRead): + """The ``BUS:B:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.polarity``: The ``BUS:B:MIL1553B:POLarity`` command. + - ``.responsetime``: The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + - ``.source``: The ``BUS:B:MIL1553B:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemMil1553bPolarity(device, f"{self._cmd_syntax}:POLarity") + self._responsetime = BusBItemMil1553bResponsetime( + device, f"{self._cmd_syntax}:RESPonsetime" + ) + self._source = BusBItemMil1553bSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemMil1553bPolarity: + """Return the ``BUS:B:MIL1553B:POLarity`` command. + + Description: + - This command sets or queries the source polarity for the specified MIL-STD-1553 bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:POLarity {NORMal|INVERTed} + - BUS:B:MIL1553B:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies normal polarity. + - ``INVERTed`` specifies inverted polarity. + """ + return self._polarity + + @property + def responsetime(self) -> BusBItemMil1553bResponsetime: + """Return the ``BUS:B:MIL1553B:RESPonsetime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.maximum``: The ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + - ``.minimum``: The ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + """ + return self._responsetime + + @property + def source(self) -> BusBItemMil1553bSource: + """Return the ``BUS:B:MIL1553B:SOUrce`` command. + + Description: + - This command specifies the source for differential input for the MIL-STD-1553 bus. The + supported source waveforms are channels 1-4, math waveform, and reference waveforms + 1-4. The default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:SOUrce {CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for differential input. + - ``MATH`` specifies the math waveform as the MIL-STD-1553 bus source for differential + input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + return self._source + + +class BusBItemLinStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:STANDard`` command. + + Description: + - Specifies the LIN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:STANDard value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:STANDard {V1X|V2X|MIXed} + - BUS:B:LIN:STANDard? + ``` + + Info: + - ``V1X`` sets the LIN bus standard to V1X. + - ``V2X`` sets the LIN bus standard to V2X. + - ``MIXed`` sets the LIN bus standard to MIXED. + """ + + +class BusBItemLinSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:SOUrce`` command. + + Description: + - Specifies the source waveform for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SOUrce {CH|D} + - BUS:B:LIN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemLinSamplepoint(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:SAMPLEpoint`` command. + + Description: + - Specifies the LIN sample point, for the specified LIN bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a percentage that represents the point at which to sample during each bit + period. + """ + + +class BusBItemLinPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:POLarity`` command. + + Description: + - Specifies the LIN bus polarity. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:POLarity {NORMal|INVerted} + - BUS:B:LIN:POLarity? + ``` + + Info: + - ``NORMal`` specifies normal polarity. + - ``INVerted`` specifies inverted polarity. + """ + + +class BusBItemLinMaxbytedelim(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:MAXBytedelim`` command. + + Description: + - Specifies the maximum byte delimiter for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:MAXBytedelim value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:MAXBytedelim + - BUS:B:LIN:MAXBytedelim? + ``` + + Info: + - ```` is the maximum byte delimiter for the LIN bus. + """ + + +class BusBItemLinIdformat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:IDFORmat`` command. + + Description: + - This command sets or queries LIN bus identifier format for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:IDFORmat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:IDFORmat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:IDFORmat value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NOPARity`` specifies an id format that includes parity. + - ``PARity`` specifies an id format that separates parity. + """ + + +class BusBItemLinBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:BITRate`` command. + + Description: + - Specifies the bit rate for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:BITRate + - BUS:B:LIN:BITRate? + ``` + + Info: + - ```` is the LIN bus bit rate. You can enter any positive integer, and the instrument + will coerce the value to the closest supported bit rate. + """ + + +class BusBItemLin(SCPICmdRead): + """The ``BUS:B:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:LIN:BITRate`` command. + - ``.idformat``: The ``BUS:B:LIN:IDFORmat`` command. + - ``.maxbytedelim``: The ``BUS:B:LIN:MAXBytedelim`` command. + - ``.polarity``: The ``BUS:B:LIN:POLarity`` command. + - ``.samplepoint``: The ``BUS:B:LIN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:LIN:SOUrce`` command. + - ``.standard``: The ``BUS:B:LIN:STANDard`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemLinBitrate(device, f"{self._cmd_syntax}:BITRate") + self._idformat = BusBItemLinIdformat(device, f"{self._cmd_syntax}:IDFORmat") + self._maxbytedelim = BusBItemLinMaxbytedelim(device, f"{self._cmd_syntax}:MAXBytedelim") + self._polarity = BusBItemLinPolarity(device, f"{self._cmd_syntax}:POLarity") + self._samplepoint = BusBItemLinSamplepoint(device, f"{self._cmd_syntax}:SAMPLEpoint") + self._source = BusBItemLinSource(device, f"{self._cmd_syntax}:SOUrce") + self._standard = BusBItemLinStandard(device, f"{self._cmd_syntax}:STANDard") + + @property + def bitrate(self) -> BusBItemLinBitrate: + """Return the ``BUS:B:LIN:BITRate`` command. + + Description: + - Specifies the bit rate for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:BITRate + - BUS:B:LIN:BITRate? + ``` + + Info: + - ```` is the LIN bus bit rate. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def idformat(self) -> BusBItemLinIdformat: + """Return the ``BUS:B:LIN:IDFORmat`` command. + + Description: + - This command sets or queries LIN bus identifier format for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:IDFORmat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:IDFORmat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:IDFORmat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NOPARity`` specifies an id format that includes parity. + - ``PARity`` specifies an id format that separates parity. + """ + return self._idformat + + @property + def maxbytedelim(self) -> BusBItemLinMaxbytedelim: + """Return the ``BUS:B:LIN:MAXBytedelim`` command. + + Description: + - Specifies the maximum byte delimiter for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:MAXBytedelim value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:MAXBytedelim + - BUS:B:LIN:MAXBytedelim? + ``` + + Info: + - ```` is the maximum byte delimiter for the LIN bus. + """ + return self._maxbytedelim + + @property + def polarity(self) -> BusBItemLinPolarity: + """Return the ``BUS:B:LIN:POLarity`` command. + + Description: + - Specifies the LIN bus polarity. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:POLarity {NORMal|INVerted} + - BUS:B:LIN:POLarity? + ``` + + Info: + - ``NORMal`` specifies normal polarity. + - ``INVerted`` specifies inverted polarity. + """ + return self._polarity + + @property + def samplepoint(self) -> BusBItemLinSamplepoint: + """Return the ``BUS:B:LIN:SAMPLEpoint`` command. + + Description: + - Specifies the LIN sample point, for the specified LIN bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a percentage that represents the point at which to sample during each bit + period. + """ + return self._samplepoint + + @property + def source(self) -> BusBItemLinSource: + """Return the ``BUS:B:LIN:SOUrce`` command. + + Description: + - Specifies the source waveform for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SOUrce {CH|D} + - BUS:B:LIN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + return self._source + + @property + def standard(self) -> BusBItemLinStandard: + """Return the ``BUS:B:LIN:STANDard`` command. + + Description: + - Specifies the LIN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:STANDard {V1X|V2X|MIXed} + - BUS:B:LIN:STANDard? + ``` + + Info: + - ``V1X`` sets the LIN bus standard to V1X. + - ``V2X`` sets the LIN bus standard to V2X. + - ``MIXed`` sets the LIN bus standard to MIXED. + """ + return self._standard + + +class BusBItemLabel(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel`` command. + + Description: + - Specifies the waveform label for the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel + - BUS:B:LABel? + ``` + + Info: + - ```` is an alphanumeric string of text, enclosed in quotes, that contains the + text label information for bus . The text string is limited to 30 characters. + """ + + +class BusBItemI2cSdataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:SDAta:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SDAta:SOUrce {CH|D} + - BUS:B:I2C:SDAta:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cSdata(SCPICmdRead): + """The ``BUS:B:I2C:SDAta`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:SDAta:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cSdataSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cSdataSource: + """Return the ``BUS:B:I2C:SDAta:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SDAta:SOUrce {CH|D} + - BUS:B:I2C:SDAta:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemI2cSclkSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SCLk:SOUrce {CH|D} + - BUS:B:I2C:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cSclk(SCPICmdRead): + """The ``BUS:B:I2C:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:SCLk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cSclkSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cSclkSource: + """Return the ``BUS:B:I2C:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SCLk:SOUrce {CH|D} + - BUS:B:I2C:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemI2cDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:DATa:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:DATa:SOUrce {CH|D} + - BUS:B:I2C:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cData(SCPICmdRead): + """The ``BUS:B:I2C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:DATa:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cDataSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cDataSource: + """Return the ``BUS:B:I2C:DATa:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:DATa:SOUrce {CH|D} + - BUS:B:I2C:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemI2cClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:CLOCk:SOUrce {CH|D} + - BUS:B:I2C:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cClock(SCPICmdRead): + """The ``BUS:B:I2C:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cClockSource: + """Return the ``BUS:B:I2C:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:CLOCk:SOUrce {CH|D} + - BUS:B:I2C:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemI2cAddressRwinclude(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:ADDRess:RWINClude`` command. + + Description: + - Sets and returns whether the read/write bit is included in the address. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:ADDRess:RWINClude value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:ADDRess:RWINClude {ON|OFF|} + - BUS:B:I2C:ADDRess:RWINClude? + ``` + + Info: + - ```` = 0 does not include the read/write bit in the address; any other value includes + the read/write bit in the address. + """ + + +class BusBItemI2cAddress(SCPICmdRead): + """The ``BUS:B:I2C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rwinclude``: The ``BUS:B:I2C:ADDRess:RWINClude`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rwinclude = BusBItemI2cAddressRwinclude(device, f"{self._cmd_syntax}:RWINClude") + + @property + def rwinclude(self) -> BusBItemI2cAddressRwinclude: + """Return the ``BUS:B:I2C:ADDRess:RWINClude`` command. + + Description: + - Sets and returns whether the read/write bit is included in the address. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:I2C:ADDRess:RWINClude value`` command. + + SCPI Syntax: + ``` + - BUS:B:I2C:ADDRess:RWINClude {ON|OFF|} + - BUS:B:I2C:ADDRess:RWINClude? + ``` + + Info: + - ```` = 0 does not include the read/write bit in the address; any other value + includes the read/write bit in the address. + """ + return self._rwinclude + + +class BusBItemI2c(SCPICmdRead): + """The ``BUS:B:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``BUS:B:I2C:ADDRess`` command tree. + - ``.clock``: The ``BUS:B:I2C:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:I2C:SCLk`` command tree. + - ``.data``: The ``BUS:B:I2C:DATa`` command tree. + - ``.sdata``: The ``BUS:B:I2C:SDAta`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = BusBItemI2cAddress(device, f"{self._cmd_syntax}:ADDRess") + self._clock = BusBItemI2cClock(device, f"{self._cmd_syntax}:CLOCk") + self._sclk = BusBItemI2cSclk(device, f"{self._cmd_syntax}:SCLk") + self._data = BusBItemI2cData(device, f"{self._cmd_syntax}:DATa") + self._sdata = BusBItemI2cSdata(device, f"{self._cmd_syntax}:SDAta") + + @property + def address(self) -> BusBItemI2cAddress: + """Return the ``BUS:B:I2C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rwinclude``: The ``BUS:B:I2C:ADDRess:RWINClude`` command. + """ + return self._address + + @property + def clock(self) -> BusBItemI2cClock: + """Return the ``BUS:B:I2C:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def sclk(self) -> BusBItemI2cSclk: + """Return the ``BUS:B:I2C:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:SCLk:SOUrce`` command. + """ + return self._sclk + + @property + def data(self) -> BusBItemI2cData: + """Return the ``BUS:B:I2C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:DATa:SOUrce`` command. + """ + return self._data + + @property + def sdata(self) -> BusBItemI2cSdata: + """Return the ``BUS:B:I2C:SDAta`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:SDAta:SOUrce`` command. + """ + return self._sdata + + +class BusBItemFlexraySource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:SOUrce`` command. + + Description: + - Specifies the FlexRay bus source waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SOUrce {CH|D} + - BUS:B:FLEXray:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + """ + + +class BusBItemFlexraySignal(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:SIGnal`` command. + + Description: + - This command sets or queries the FlexRay signal type for the specified bus. The bus number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SIGnal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SIGnal?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SIGnal value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BDIFFBP`` sets the FlexRay signal type to BDIFFBP. + - ``BM`` sets the FlexRay signal type to BM. + - ``TXRX`` sets the FlexRay signal type to TXRX. + """ + + +class BusBItemFlexrayChannel(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:CHannel`` command. + + Description: + - This command sets or queries the FlexRay channel type for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:CHannel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:CHannel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:CHannel value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + ``` + + Info: + - ``B`` is the number of the bus. + - ``A`` specifies the A channel. + - ``B`` specifies the B channel. + """ + + +class BusBItemFlexrayBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:BITRate`` command. + + Description: + - Specifies the bit rate for the FlexRay bus signal. The maximum bitrate is 100 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:BITRate + - BUS:B:FLEXray:BITRate? + ``` + + Info: + - ```` specifies the FlexRay bus bit rate. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + + +class BusBItemFlexray(SCPICmdRead): + """The ``BUS:B:FLEXray`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:FLEXray:BITRate`` command. + - ``.channel``: The ``BUS:B:FLEXray:CHannel`` command. + - ``.signal``: The ``BUS:B:FLEXray:SIGnal`` command. + - ``.source``: The ``BUS:B:FLEXray:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemFlexrayBitrate(device, f"{self._cmd_syntax}:BITRate") + self._channel = BusBItemFlexrayChannel(device, f"{self._cmd_syntax}:CHannel") + self._signal = BusBItemFlexraySignal(device, f"{self._cmd_syntax}:SIGnal") + self._source = BusBItemFlexraySource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemFlexrayBitrate: + """Return the ``BUS:B:FLEXray:BITRate`` command. + + Description: + - Specifies the bit rate for the FlexRay bus signal. The maximum bitrate is 100 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:BITRate + - BUS:B:FLEXray:BITRate? + ``` + + Info: + - ```` specifies the FlexRay bus bit rate. You can enter any positive integer, and + the instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def channel(self) -> BusBItemFlexrayChannel: + """Return the ``BUS:B:FLEXray:CHannel`` command. + + Description: + - This command sets or queries the FlexRay channel type for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:CHannel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:CHannel?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:CHannel value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + ``` + + Info: + - ``B`` is the number of the bus. + - ``A`` specifies the A channel. + - ``B`` specifies the B channel. + """ + return self._channel + + @property + def signal(self) -> BusBItemFlexraySignal: + """Return the ``BUS:B:FLEXray:SIGnal`` command. + + Description: + - This command sets or queries the FlexRay signal type for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SIGnal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SIGnal?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SIGnal value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BDIFFBP`` sets the FlexRay signal type to BDIFFBP. + - ``BM`` sets the FlexRay signal type to BM. + - ``TXRX`` sets the FlexRay signal type to TXRX. + """ + return self._signal + + @property + def source(self) -> BusBItemFlexraySource: + """Return the ``BUS:B:FLEXray:SOUrce`` command. + + Description: + - Specifies the FlexRay bus source waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SOUrce {CH|D} + - BUS:B:FLEXray:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + """ + return self._source + + +class BusBItemEthernetType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:TYPe`` command. + + Description: + - This command specifies the Ethernet standard type: 10Base-T or 100Base-T. The default is + ENET 100 BASETX. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:TYPe {ENET10BASET|ENET100BASETX} + - BUS:B:ETHERnet:TYPe? + ``` + + Info: + - ``ENET10BASET`` specifies the Ethernet type as 10Base-T standard. This standard supports + data transfer rates up to 10 Mbps (also called Twisted Pair Ethernet). + - ``ENET100BASETX`` specifies the Ethernet type as 100Base-T standard. This standard + supports data transfer rates up to 100 Mbps (also called Fast Ethernet). + """ + + +class BusBItemEthernetSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + + Description: + - This command specifies the Ethernet data source for D- input for single-ended probing. The + default is Channel 2. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DMINus {CH|D} + - BUS:B:ETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies to use one of the analog channels as the Ethernet data source for the + D- input. + - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data source + for the D- input. + """ + + +class BusBItemEthernetSourceDifferential(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the Ethernet data source for differential input. The supported + source waveforms are channels 1-4, math waveform, and reference waveforms 1-4. The default + is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies to use one of the channels 1-4 as the Ethernet data source for + differential input. + - ``MATH`` specifies to use the math waveform as the source for Ethernet data differential + input. + - ``REF`` specifies to use one of the reference waveforms 1-4 as the source for Ethernet + data differential input. + """ + + +class BusBItemEthernetSource(SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.differential``: The ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._differential = BusBItemEthernetSourceDifferential( + device, f"{self._cmd_syntax}:DIFFerential" + ) + self._dminus = BusBItemEthernetSourceDminus(device, f"{self._cmd_syntax}:DMINus") + + @property + def differential(self) -> BusBItemEthernetSourceDifferential: + """Return the ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the Ethernet data source for differential input. The supported + source waveforms are channels 1-4, math waveform, and reference waveforms 1-4. The + default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies to use one of the channels 1-4 as the Ethernet data source for + differential input. + - ``MATH`` specifies to use the math waveform as the source for Ethernet data + differential input. + - ``REF`` specifies to use one of the reference waveforms 1-4 as the source for + Ethernet data differential input. + """ + return self._differential + + @property + def dminus(self) -> BusBItemEthernetSourceDminus: + """Return the ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + + Description: + - This command specifies the Ethernet data source for D- input for single-ended probing. + The default is Channel 2. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DMINus {CH|D} + - BUS:B:ETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies to use one of the analog channels as the Ethernet data source for + the D- input. + - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data + source for the D- input. + """ + return self._dminus + + +class BusBItemEthernetProbe(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:PRObe`` command. + + Description: + - This command specifies the Ethernet probe type: differential or single-ended. The default + is DIFFerential. B is the bus number. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PRObe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PRObe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PRObe {DIFFerential|SINGleended} + - BUS:B:ETHERnet:PRObe? + ``` + + Info: + - ``DIFFerential`` + - ``SINGleended`` + """ + + +class BusBItemEthernetProtocol(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:PROTOcol`` command. + + Description: + - Use this command to set the Ethernet protocol type to TCP/IPv4, or to OTHER. The default + is IPV4. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PROTOcol {IPv4|OTHER} + - BUS:B:ETHERnet:PROTOcol? + ``` + + Info: + - ``IPv4`` sets the Ethernet protocol type to Internet Protocol version 4. + - ``OTHER`` sets the Ethernet protocol type to other than IPv4. + """ + + +class BusBItemEthernet(SCPICmdRead): + """The ``BUS:B:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.protocol``: The ``BUS:B:ETHERnet:PROTOcol`` command. + - ``.probe``: The ``BUS:B:ETHERnet:PRObe`` command. + - ``.source``: The ``BUS:B:ETHERnet:SOUrce`` command tree. + - ``.type``: The ``BUS:B:ETHERnet:TYPe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._protocol = BusBItemEthernetProtocol(device, f"{self._cmd_syntax}:PROTOcol") + self._probe = BusBItemEthernetProbe(device, f"{self._cmd_syntax}:PRObe") + self._source = BusBItemEthernetSource(device, f"{self._cmd_syntax}:SOUrce") + self._type = BusBItemEthernetType(device, f"{self._cmd_syntax}:TYPe") + + @property + def protocol(self) -> BusBItemEthernetProtocol: + """Return the ``BUS:B:ETHERnet:PROTOcol`` command. + + Description: + - Use this command to set the Ethernet protocol type to TCP/IPv4, or to OTHER. The + default is IPV4. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PROTOcol {IPv4|OTHER} + - BUS:B:ETHERnet:PROTOcol? + ``` + + Info: + - ``IPv4`` sets the Ethernet protocol type to Internet Protocol version 4. + - ``OTHER`` sets the Ethernet protocol type to other than IPv4. + """ + return self._protocol + + @property + def probe(self) -> BusBItemEthernetProbe: + """Return the ``BUS:B:ETHERnet:PRObe`` command. + + Description: + - This command specifies the Ethernet probe type: differential or single-ended. The + default is DIFFerential. B is the bus number. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PRObe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PRObe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PRObe {DIFFerential|SINGleended} + - BUS:B:ETHERnet:PRObe? + ``` + + Info: + - ``DIFFerential`` + - ``SINGleended`` + """ + return self._probe + + @property + def source(self) -> BusBItemEthernetSource: + """Return the ``BUS:B:ETHERnet:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.differential``: The ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + """ + return self._source + + @property + def type(self) -> BusBItemEthernetType: + """Return the ``BUS:B:ETHERnet:TYPe`` command. + + Description: + - This command specifies the Ethernet standard type: 10Base-T or 100Base-T. The default + is ENET 100 BASETX. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:TYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:TYPe {ENET10BASET|ENET100BASETX} + - BUS:B:ETHERnet:TYPe? + ``` + + Info: + - ``ENET10BASET`` specifies the Ethernet type as 10Base-T standard. This standard + supports data transfer rates up to 10 Mbps (also called Twisted Pair Ethernet). + - ``ENET100BASETX`` specifies the Ethernet type as 100Base-T standard. This standard + supports data transfer rates up to 100 Mbps (also called Fast Ethernet). + """ + return self._type + + +class BusBItemDisplayType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DISplay:TYPe`` command. + + Description: + - Specifies the display type for bus. You can set up the bus to display the protocol + information, the logic waveforms that comprise the bus, or both. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:TYPe {BUS|BOTh} + - BUS:B:DISplay:TYPe? + ``` + + Info: + - ``BUS`` displays the bus waveforms only. + - ``BOTh`` displays both the bus and logic waveforms. + """ + + +class BusBItemDisplayFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the numerical information in the bus waveform. The + display formats supported depend on the ``BUS:BX:TYPE``. Supported display formats Bus + type Display format Audio BINary | HEXadecimal | ASCII | SIGNEDDECimal CAN BINary | + HEXadecimal | MIXed Ethernet BINary | HEXadecimal | ASCII | MIXed FlexRay BINary | + HEXadecimal | MIXed I 2 C BINary | HEXadecimal LIN BINary | HEXadecimal | MiXed + MIL-STD-1553 BINary | HEXadecimal | ASCII|MIXed|BLOCKHEX Parallel BINary | HEXadecimal + RS232C BINary | HEXadecimal | ASCII SPI BINary | HEXadecimal USB BINary | HEXadecimal | + MIXed | MIXED2 SIGNEDDECimal is set using the audio application + ``BUS:BX:AUDIO:DISPLAY:FORMAT`` command. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:FORMat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:FORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:FORMat {BINary|HEXadecimal|ASCII|MIXed|MIXED2|BLOCKHEX} + - BUS:B:DISplay:FORMat? + ``` + + Info: + - ``BINary`` - All values are displayed in binary. + - ``HEXadecimal`` - All values are displayed in hexadecimal. + - ``ASCII`` - All values are displayed in an ASCII format, for RS-232 only. + - ``MIXed`` - Values are displayed in a mixture of hexadecimal, binary, and decimal, + depending on the field. + - ``MIXED2`` - Values are displayed in a mixture of hexadecimal, binary, decimal and ASCII, + depending on the field. + - ``BLOCKHEX`` - Displays the 16-bits of each payload as a block of 4 hexadecimal digits. + """ + + +class BusBItemDisplay(SCPICmdRead): + """The ``BUS:B:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``BUS:B:DISplay:FORMat`` command. + - ``.type``: The ``BUS:B:DISplay:TYPe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemDisplayFormat(device, f"{self._cmd_syntax}:FORMat") + self._type = BusBItemDisplayType(device, f"{self._cmd_syntax}:TYPe") + + @property + def format(self) -> BusBItemDisplayFormat: + """Return the ``BUS:B:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the numerical information in the bus waveform. The + display formats supported depend on the ``BUS:BX:TYPE``. Supported display formats Bus + type Display format Audio BINary | HEXadecimal | ASCII | SIGNEDDECimal CAN BINary | + HEXadecimal | MIXed Ethernet BINary | HEXadecimal | ASCII | MIXed FlexRay BINary | + HEXadecimal | MIXed I 2 C BINary | HEXadecimal LIN BINary | HEXadecimal | MiXed + MIL-STD-1553 BINary | HEXadecimal | ASCII|MIXed|BLOCKHEX Parallel BINary | HEXadecimal + RS232C BINary | HEXadecimal | ASCII SPI BINary | HEXadecimal USB BINary | HEXadecimal + | MIXed | MIXED2 SIGNEDDECimal is set using the audio application + ``BUS:BX:AUDIO:DISPLAY:FORMAT`` command. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:FORMat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:FORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:FORMat {BINary|HEXadecimal|ASCII|MIXed|MIXED2|BLOCKHEX} + - BUS:B:DISplay:FORMat? + ``` + + Info: + - ``BINary`` - All values are displayed in binary. + - ``HEXadecimal`` - All values are displayed in hexadecimal. + - ``ASCII`` - All values are displayed in an ASCII format, for RS-232 only. + - ``MIXed`` - Values are displayed in a mixture of hexadecimal, binary, and decimal, + depending on the field. + - ``MIXED2`` - Values are displayed in a mixture of hexadecimal, binary, decimal and + ASCII, depending on the field. + - ``BLOCKHEX`` - Displays the 16-bits of each payload as a block of 4 hexadecimal + digits. + """ + return self._format + + @property + def type(self) -> BusBItemDisplayType: + """Return the ``BUS:B:DISplay:TYPe`` command. + + Description: + - Specifies the display type for bus. You can set up the bus to display the protocol + information, the logic waveforms that comprise the bus, or both. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:TYPe {BUS|BOTh} + - BUS:B:DISplay:TYPe? + ``` + + Info: + - ``BUS`` displays the bus waveforms only. + - ``BOTh`` displays both the bus and logic waveforms. + """ + return self._type + + +class BusBItemCanStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:STANDard`` command. + + Description: + - Specifies the CAN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:STANDard value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:STANDard {CAN2X|CANFD} string + - BUS:B:CAN:STANDard? + ``` + + Info: + - ``CAN2X`` sets the CAN bus standard to CAN 2.0. + - ``CANFD`` sets the CAN bus standard to CAN FD. + """ + + +class BusBItemCanSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:SOUrce`` command. + + Description: + - Specifies the CAN bus data source. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SOUrce {CH|D} + - BUS:B:CAN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform. + - ``D`` specifies a digital channel as the data source waveform. (Requires installation + of option 3-MSO.). + """ + + +class BusBItemCanSamplepoint(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:SAMPLEpoint`` command. + + Description: + - This command sets or queries the sample point for the specified CAN bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the sample point, in percent, for the specified CAN bus. + """ + + +class BusBItemCanProbe(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:PRObe`` command. + + Description: + - Specifies the probing method for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:PRObe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:PRObe {CANH|CANL|RX|TX|DIFFerential} + - BUS:B:CAN:PRObe? + ``` + + Info: + - ``CANH`` specifies the single-ended CANH signal, as specified by the CAN standard. + - ``CANL`` specifies the single-ended CANL signal, as specified by the CAN standard. + - ``RX`` specifies the receive signal on the bus side of the CAN transceiver. + - ``TX`` specifies the transmit signal. + - ``DIFFerential`` specifies the differential CAN signal. + """ + + +class BusBItemCanFdStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:FD:STANDard`` command. + + Description: + - Specifies the CAN FD standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:STANDard {ISO | NONISO} string + - BUS:B:CAN:FD:STANDard? + ``` + + Info: + - ``ISO`` sets the CAN FD standard to ISO CAN FD (11898-``1:2015``). + - ``NONISO`` sets the CAN FD standard to non-ISO CAN FD (``Bosch:2012``). + """ + + +class BusBItemCanFdBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:FD:BITRate`` command. + + Description: + - Specifies the FD bit rate for the CAN bus. This is the bitrate used for CAN FD frames + transmitted with increased data phase rates. The maximum bitrate is 10 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:BITRate + - BUS:B:CAN:FD:BITRate? + ``` + + Info: + - ```` is the FD bit rate. The instrument supports bit rates at 100 bps intervals. You + can enter any positive integer, and the instrument will coerce the value to the closest + supported bit rate. + """ + + +class BusBItemCanFd(SCPICmdRead): + """The ``BUS:B:CAN:FD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:CAN:FD:BITRate`` command. + - ``.standard``: The ``BUS:B:CAN:FD:STANDard`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemCanFdBitrate(device, f"{self._cmd_syntax}:BITRate") + self._standard = BusBItemCanFdStandard(device, f"{self._cmd_syntax}:STANDard") + + @property + def bitrate(self) -> BusBItemCanFdBitrate: + """Return the ``BUS:B:CAN:FD:BITRate`` command. + + Description: + - Specifies the FD bit rate for the CAN bus. This is the bitrate used for CAN FD frames + transmitted with increased data phase rates. The maximum bitrate is 10 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:BITRate + - BUS:B:CAN:FD:BITRate? + ``` + + Info: + - ```` is the FD bit rate. The instrument supports bit rates at 100 bps intervals. + You can enter any positive integer, and the instrument will coerce the value to the + closest supported bit rate. + """ + return self._bitrate + + @property + def standard(self) -> BusBItemCanFdStandard: + """Return the ``BUS:B:CAN:FD:STANDard`` command. + + Description: + - Specifies the CAN FD standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:STANDard?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:STANDard {ISO | NONISO} string + - BUS:B:CAN:FD:STANDard? + ``` + + Info: + - ``ISO`` sets the CAN FD standard to ISO CAN FD (11898-``1:2015``). + - ``NONISO`` sets the CAN FD standard to non-ISO CAN FD (``Bosch:2012``). + """ + return self._standard + + +class BusBItemCanBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:BITRate`` command. + + Description: + - Specifies the bit rate for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:BITRate + - BUS:B:CAN:BITRate? + ``` + + Info: + - ```` is the bit rate. The instrument supports bit rates at 10 bps intervals. You can + enter any positive integer, and the instrument will coerce the value to the closest + supported bit rate. + """ + + +class BusBItemCan(SCPICmdRead): + """The ``BUS:B:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:CAN:BITRate`` command. + - ``.fd``: The ``BUS:B:CAN:FD`` command tree. + - ``.probe``: The ``BUS:B:CAN:PRObe`` command. + - ``.samplepoint``: The ``BUS:B:CAN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:CAN:SOUrce`` command. + - ``.standard``: The ``BUS:B:CAN:STANDard`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemCanBitrate(device, f"{self._cmd_syntax}:BITRate") + self._fd = BusBItemCanFd(device, f"{self._cmd_syntax}:FD") + self._probe = BusBItemCanProbe(device, f"{self._cmd_syntax}:PRObe") + self._samplepoint = BusBItemCanSamplepoint(device, f"{self._cmd_syntax}:SAMPLEpoint") + self._source = BusBItemCanSource(device, f"{self._cmd_syntax}:SOUrce") + self._standard = BusBItemCanStandard(device, f"{self._cmd_syntax}:STANDard") + + @property + def bitrate(self) -> BusBItemCanBitrate: + """Return the ``BUS:B:CAN:BITRate`` command. + + Description: + - Specifies the bit rate for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:BITRate + - BUS:B:CAN:BITRate? + ``` + + Info: + - ```` is the bit rate. The instrument supports bit rates at 10 bps intervals. You + can enter any positive integer, and the instrument will coerce the value to the + closest supported bit rate. + """ + return self._bitrate + + @property + def fd(self) -> BusBItemCanFd: + """Return the ``BUS:B:CAN:FD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CAN:FD:BITRate`` command. + - ``.standard``: The ``BUS:B:CAN:FD:STANDard`` command. + """ + return self._fd + + @property + def probe(self) -> BusBItemCanProbe: + """Return the ``BUS:B:CAN:PRObe`` command. + + Description: + - Specifies the probing method for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:PRObe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:PRObe {CANH|CANL|RX|TX|DIFFerential} + - BUS:B:CAN:PRObe? + ``` + + Info: + - ``CANH`` specifies the single-ended CANH signal, as specified by the CAN standard. + - ``CANL`` specifies the single-ended CANL signal, as specified by the CAN standard. + - ``RX`` specifies the receive signal on the bus side of the CAN transceiver. + - ``TX`` specifies the transmit signal. + - ``DIFFerential`` specifies the differential CAN signal. + """ + return self._probe + + @property + def samplepoint(self) -> BusBItemCanSamplepoint: + """Return the ``BUS:B:CAN:SAMPLEpoint`` command. + + Description: + - This command sets or queries the sample point for the specified CAN bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the sample point, in percent, for the specified CAN bus. + """ + return self._samplepoint + + @property + def source(self) -> BusBItemCanSource: + """Return the ``BUS:B:CAN:SOUrce`` command. + + Description: + - Specifies the CAN bus data source. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SOUrce {CH|D} + - BUS:B:CAN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform. + - ``D`` specifies a digital channel as the data source waveform. (Requires + installation of option 3-MSO.). + """ + return self._source + + @property + def standard(self) -> BusBItemCanStandard: + """Return the ``BUS:B:CAN:STANDard`` command. + + Description: + - Specifies the CAN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:STANDard {CAN2X|CANFD} string + - BUS:B:CAN:STANDard? + ``` + + Info: + - ``CAN2X`` sets the CAN bus standard to CAN 2.0. + - ``CANFD`` sets the CAN bus standard to CAN FD. + """ + return self._standard + + +class BusBItemAudioWordselSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + + Description: + - Specifies the word select source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:SOUrce {CH|D} + - BUS:B:AUDio:WORDSel:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the word select source waveform . + - ``D`` specifies a digital channel as the word select source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemAudioWordselPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel:POLarity`` command. + + Description: + - This command sets or queries the word select source polarity for the specified audio bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:WORDSel:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:WORDSel:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies positive polarity. + - ``INVERTed`` specifies negative polarity. + """ + + +class BusBItemAudioWordsel(SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:WORDSel:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioWordselPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemAudioWordselSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioWordselPolarity: + """Return the ``BUS:B:AUDio:WORDSel:POLarity`` command. + + Description: + - This command sets or queries the word select source polarity for the specified audio + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:WORDSel:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:WORDSel:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies positive polarity. + - ``INVERTed`` specifies negative polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemAudioWordselSource: + """Return the ``BUS:B:AUDio:WORDSel:SOUrce`` command. + + Description: + - Specifies the word select source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:WORDSel:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:SOUrce {CH|D} + - BUS:B:AUDio:WORDSel:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the word select source waveform . + - ``D`` specifies a digital channel as the word select source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemAudioType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:TYPe`` command. + + Description: + - This command sets or queries the audio format (type) for the specified audio bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:TYPe {I2S|LJ|RJ|TDM} + - BUS:B:AUDio:TYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``I2S`` specifies the I2S audio format. + - ``LJ`` specifies the left-justified audio format. + - ``RJ`` specifies the right-justified audio format. + - ``TDM`` specifies the time-division multiplexing audio format. + """ + + +class BusBItemAudioFramesyncSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + + Description: + - Specifies the frame sync source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:SOUrce {CH|D} + - BUS:B:AUDio:FRAMESync:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the frame sync source waveform. + - ``D`` specifies a digital channel as the frame sync source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemAudioFramesyncPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAMESync:POLarity`` command. + + Description: + - Specifies the frame sync polarity for the AUDIO bus - falling or rising edge. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:POLarity {FALL|RISe} + - BUS:B:AUDio:FRAMESync:POLarity? + ``` + + Info: + - ``FALL`` specifies the falling edge as the frame sync polarity. + - ``RISe`` specifies the rising edge as the frame sync polarity. + """ + + +class BusBItemAudioFramesync(SCPICmdRead): + """The ``BUS:B:AUDio:FRAMESync`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:FRAMESync:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioFramesyncPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemAudioFramesyncSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioFramesyncPolarity: + """Return the ``BUS:B:AUDio:FRAMESync:POLarity`` command. + + Description: + - Specifies the frame sync polarity for the AUDIO bus - falling or rising edge. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:POLarity?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:POLarity {FALL|RISe} + - BUS:B:AUDio:FRAMESync:POLarity? + ``` + + Info: + - ``FALL`` specifies the falling edge as the frame sync polarity. + - ``RISe`` specifies the rising edge as the frame sync polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemAudioFramesyncSource: + """Return the ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + + Description: + - Specifies the frame sync source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:SOUrce {CH|D} + - BUS:B:AUDio:FRAMESync:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the frame sync source waveform. + - ``D`` specifies a digital channel as the frame sync source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemAudioFrameSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAME:SIZe`` command. + + Description: + - This command sets or queries the number of audio channels in each frame for the specified + AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of channels in each frame. + """ + + +class BusBItemAudioFrame(SCPICmdRead): + """The ``BUS:B:AUDio:FRAME`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.size``: The ``BUS:B:AUDio:FRAME:SIZe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemAudioFrameSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def size(self) -> BusBItemAudioFrameSize: + """Return the ``BUS:B:AUDio:FRAME:SIZe`` command. + + Description: + - This command sets or queries the number of audio channels in each frame for the + specified AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of channels in each frame. + """ + return self._size + + +class BusBItemAudioDisplayFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DISplay:FORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DISplay:FORMat {BINary|HEXadecimal|SIGNEDDECimal} + - BUS:B:AUDio:DISplay:FORMat? + ``` + + Info: + - ``BINary`` specifies a binary data display. + - ``HEXadecimal`` specifies a hexadecimal data display. + - ``SIGNEDDECimal`` specifies a signed decimal data display. + """ + + +class BusBItemAudioDisplay(SCPICmdRead): + """The ``BUS:B:AUDio:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``BUS:B:AUDio:DISplay:FORMat`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemAudioDisplayFormat(device, f"{self._cmd_syntax}:FORMat") + + @property + def format(self) -> BusBItemAudioDisplayFormat: + """Return the ``BUS:B:AUDio:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:DISplay:FORMat value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DISplay:FORMat {BINary|HEXadecimal|SIGNEDDECimal} + - BUS:B:AUDio:DISplay:FORMat? + ``` + + Info: + - ``BINary`` specifies a binary data display. + - ``HEXadecimal`` specifies a hexadecimal data display. + - ``SIGNEDDECimal`` specifies a signed decimal data display. + """ + return self._format + + +class BusBItemAudioDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:SOUrce`` command. + + Description: + - Specifies the data source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SOUrce {CH|D} + - BUS:B:AUDio:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. + - ``D`` specifies a digital channel as the data source waveform for the audio bus. + (Requires option 3-MSO.). + """ + + +class BusBItemAudioDataSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per channel for the specified audio bus. + This command only applies to the TDM Audio type. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NR1`` specifies the number of bits per word. + """ + + +class BusBItemAudioDataPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:POLarity`` command. + + Description: + - Specifies the data polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:DATa:POLarity? + ``` + + Info: + - ``NORMal`` specifies positive data polarity for the audio bus. + - ``INVERTed`` specifies negative data polarity for the audio bus. + """ + + +class BusBItemAudioData(SCPICmdRead): + """The ``BUS:B:AUDio:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:DATa:POLarity`` command. + - ``.size``: The ``BUS:B:AUDio:DATa:SIZe`` command. + - ``.source``: The ``BUS:B:AUDio:DATa:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioDataPolarity(device, f"{self._cmd_syntax}:POLarity") + self._size = BusBItemAudioDataSize(device, f"{self._cmd_syntax}:SIZe") + self._source = BusBItemAudioDataSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioDataPolarity: + """Return the ``BUS:B:AUDio:DATa:POLarity`` command. + + Description: + - Specifies the data polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:DATa:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:DATa:POLarity? + ``` + + Info: + - ``NORMal`` specifies positive data polarity for the audio bus. + - ``INVERTed`` specifies negative data polarity for the audio bus. + """ + return self._polarity + + @property + def size(self) -> BusBItemAudioDataSize: + """Return the ``BUS:B:AUDio:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per channel for the specified audio + bus. This command only applies to the TDM Audio type. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NR1`` specifies the number of bits per word. + """ + return self._size + + @property + def source(self) -> BusBItemAudioDataSource: + """Return the ``BUS:B:AUDio:DATa:SOUrce`` command. + + Description: + - Specifies the data source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SOUrce {CH|D} + - BUS:B:AUDio:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. + - ``D`` specifies a digital channel as the data source waveform for the audio bus. + (Requires option 3-MSO.). + """ + return self._source + + +class BusBItemAudioClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:SOUrce {CH|D} + - BUS:B:AUDio:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``D`` specifies a digital channel as the clock source waveform for the audio bus. + (Requires installation of option 3-MSO.). + """ + + +class BusBItemAudioClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:POLarity`` command. + + Description: + - Specifies the clock polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISe} + - BUS:B:AUDio:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` sets falling edge as the clock polarity. + - ``RISe`` sets rising edge as the clock polarity. + """ + + +class BusBItemAudioClock(SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioClockPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemAudioClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioClockPolarity: + """Return the ``BUS:B:AUDio:CLOCk:POLarity`` command. + + Description: + - Specifies the clock polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:CLOCk:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISe} + - BUS:B:AUDio:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` sets falling edge as the clock polarity. + - ``RISe`` sets rising edge as the clock polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemAudioClockSource: + """Return the ``BUS:B:AUDio:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:SOUrce {CH|D} + - BUS:B:AUDio:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``D`` specifies a digital channel as the clock source waveform for the audio bus. + (Requires installation of option 3-MSO.). + """ + return self._source + + +class BusBItemAudioChannelSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CHANnel:SIZe`` command. + + Description: + - Specifies the number of bits per channel for the AUDIO bus. (To specify the number of bits + per word, use ``BUS:BX:AUDIO:DATA:SIZE``). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CHANnel:SIZe + - BUS:B:AUDio:CHANnel:SIZe? + ``` + + Info: + - ```` specifies the number of bits per channel. + """ + + +class BusBItemAudioChannel(SCPICmdRead): + """The ``BUS:B:AUDio:CHANnel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.size``: The ``BUS:B:AUDio:CHANnel:SIZe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemAudioChannelSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def size(self) -> BusBItemAudioChannelSize: + """Return the ``BUS:B:AUDio:CHANnel:SIZe`` command. + + Description: + - Specifies the number of bits per channel for the AUDIO bus. (To specify the number of + bits per word, use ``BUS:BX:AUDIO:DATA:SIZE``). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CHANnel:SIZe + - BUS:B:AUDio:CHANnel:SIZe? + ``` + + Info: + - ```` specifies the number of bits per channel. + """ + return self._size + + +class BusBItemAudioBitorder(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:BITOrder`` command. + + Description: + - Specifies the bit order for the specified AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus. + - ``MSB`` specifies that the most significant bit will be expected first in the order. + - ``LSB`` specifies that the least significant bit will be expected first in the order. + """ + + +class BusBItemAudioBitdelay(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:BITDelay`` command. + + Description: + - This command sets or queries the number of delay bits for the specified AUDIO bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITDelay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITDelay?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITDelay value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of delay bits. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemAudio(SCPICmdRead): + """The ``BUS:B:AUDio`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitdelay``: The ``BUS:B:AUDio:BITDelay`` command. + - ``.bitorder``: The ``BUS:B:AUDio:BITOrder`` command. + - ``.channel``: The ``BUS:B:AUDio:CHANnel`` command tree. + - ``.clock``: The ``BUS:B:AUDio:CLOCk`` command tree. + - ``.data``: The ``BUS:B:AUDio:DATa`` command tree. + - ``.display``: The ``BUS:B:AUDio:DISplay`` command tree. + - ``.frame``: The ``BUS:B:AUDio:FRAME`` command tree. + - ``.framesync``: The ``BUS:B:AUDio:FRAMESync`` command tree. + - ``.type``: The ``BUS:B:AUDio:TYPe`` command. + - ``.wordsel``: The ``BUS:B:AUDio:WORDSel`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitdelay = BusBItemAudioBitdelay(device, f"{self._cmd_syntax}:BITDelay") + self._bitorder = BusBItemAudioBitorder(device, f"{self._cmd_syntax}:BITOrder") + self._channel = BusBItemAudioChannel(device, f"{self._cmd_syntax}:CHANnel") + self._clock = BusBItemAudioClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemAudioData(device, f"{self._cmd_syntax}:DATa") + self._display = BusBItemAudioDisplay(device, f"{self._cmd_syntax}:DISplay") + self._frame = BusBItemAudioFrame(device, f"{self._cmd_syntax}:FRAME") + self._framesync = BusBItemAudioFramesync(device, f"{self._cmd_syntax}:FRAMESync") + self._type = BusBItemAudioType(device, f"{self._cmd_syntax}:TYPe") + self._wordsel = BusBItemAudioWordsel(device, f"{self._cmd_syntax}:WORDSel") + + @property + def bitdelay(self) -> BusBItemAudioBitdelay: + """Return the ``BUS:B:AUDio:BITDelay`` command. + + Description: + - This command sets or queries the number of delay bits for the specified AUDIO bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITDelay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITDelay?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITDelay value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of delay bits. + """ + return self._bitdelay + + @property + def bitorder(self) -> BusBItemAudioBitorder: + """Return the ``BUS:B:AUDio:BITOrder`` command. + + Description: + - Specifies the bit order for the specified AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITOrder?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus. + - ``MSB`` specifies that the most significant bit will be expected first in the order. + - ``LSB`` specifies that the least significant bit will be expected first in the order. + """ + return self._bitorder + + @property + def channel(self) -> BusBItemAudioChannel: + """Return the ``BUS:B:AUDio:CHANnel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``BUS:B:AUDio:CHANnel:SIZe`` command. + """ + return self._channel + + @property + def clock(self) -> BusBItemAudioClock: + """Return the ``BUS:B:AUDio:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def data(self) -> BusBItemAudioData: + """Return the ``BUS:B:AUDio:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:DATa:POLarity`` command. + - ``.size``: The ``BUS:B:AUDio:DATa:SIZe`` command. + - ``.source``: The ``BUS:B:AUDio:DATa:SOUrce`` command. + """ + return self._data + + @property + def display(self) -> BusBItemAudioDisplay: + """Return the ``BUS:B:AUDio:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``BUS:B:AUDio:DISplay:FORMat`` command. + """ + return self._display + + @property + def frame(self) -> BusBItemAudioFrame: + """Return the ``BUS:B:AUDio:FRAME`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.size``: The ``BUS:B:AUDio:FRAME:SIZe`` command. + """ + return self._frame + + @property + def framesync(self) -> BusBItemAudioFramesync: + """Return the ``BUS:B:AUDio:FRAMESync`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:FRAMESync:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + """ + return self._framesync + + @property + def type(self) -> BusBItemAudioType: + """Return the ``BUS:B:AUDio:TYPe`` command. + + Description: + - This command sets or queries the audio format (type) for the specified audio bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:TYPe {I2S|LJ|RJ|TDM} + - BUS:B:AUDio:TYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``I2S`` specifies the I2S audio format. + - ``LJ`` specifies the left-justified audio format. + - ``RJ`` specifies the right-justified audio format. + - ``TDM`` specifies the time-division multiplexing audio format. + """ + return self._type + + @property + def wordsel(self) -> BusBItemAudioWordsel: + """Return the ``BUS:B:AUDio:WORDSel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:WORDSel:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + """ + return self._wordsel + + +class BusBItemArinc429aSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:SOUrce`` command. + + Description: + - This command specifies the source for the differential input for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:SOUrce {CH|MATH|REF} + - BUS:B:ARINC429A:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for the differential input. + - ``MATH`` specifies the math waveform as the source for differential input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + + +class BusBItemArinc429aPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:POLarity`` command. + + Description: + - This command sets the polarity of the ARINC429 bus (normal or inverted). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:POLarity {NORMal|INVERTed} + - BUS:B:ARINC429A:POLarity? + ``` + + Info: + - ``NORMal`` - A positive differential pulse in the first half of a bit period that then + returns to zero differential represents a 1 on the differential source. + - ``INVERTed`` - A positive differential pulse in the first half of a bit period that then + returns to zero differential represents a 0 on the differential source. + """ + + +class BusBItemArinc429aDataFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:DATA:FORMAT`` command. + + Description: + - Specifies the format of the DATA field in ARINC429 packets on a bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:DATA:FORMAT {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATA:FORMAT? + ``` + + Info: + - ``DATA`` sets the ARINC429 DATA field width to 19 bits wide (covering bits 11 through 29 + of the 32 bit packet). + - ``SDIDATA`` sets the ARINC429 DATA field width to 21 bits wide (covering bits 9 through 29 + of the 32 bit packet). + - ``SDIDATASSM`` sets the ARINC429 DATA field width to 23 bits wide (covering bits 9 through + 31 of the 32 bit packet). + """ + + +class BusBItemArinc429aData(SCPICmdRead): + """The ``BUS:B:ARINC429A:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``BUS:B:ARINC429A:DATA:FORMAT`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemArinc429aDataFormat(device, f"{self._cmd_syntax}:FORMAT") + + @property + def format(self) -> BusBItemArinc429aDataFormat: + """Return the ``BUS:B:ARINC429A:DATA:FORMAT`` command. + + Description: + - Specifies the format of the DATA field in ARINC429 packets on a bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ARINC429A:DATA:FORMAT value`` command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:DATA:FORMAT {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATA:FORMAT? + ``` + + Info: + - ``DATA`` sets the ARINC429 DATA field width to 19 bits wide (covering bits 11 through + 29 of the 32 bit packet). + - ``SDIDATA`` sets the ARINC429 DATA field width to 21 bits wide (covering bits 9 + through 29 of the 32 bit packet). + - ``SDIDATASSM`` sets the ARINC429 DATA field width to 23 bits wide (covering bits 9 + through 31 of the 32 bit packet). + """ + return self._format + + +class BusBItemArinc429aBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:BITRate`` command. + + Description: + - This command specifies the bit rate for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:BITRate {LOW|HI|} + - BUS:B:ARINC429A:BITRate? + ``` + + Info: + - ``LOW`` sets the ARINC429 bit rate to handle low speed signals (12000 bits-per-second to + 14500 bits-per-second). + - ``HI`` sets the ARINC429 bit rate to handle high speed signals (100,000 bits-per-second). + - ```` is a bit rate in bits-per-second. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + + +class BusBItemArinc429a(SCPICmdRead): + """The ``BUS:B:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:ARINC429A:BITRate`` command. + - ``.data``: The ``BUS:B:ARINC429A:DATA`` command tree. + - ``.polarity``: The ``BUS:B:ARINC429A:POLarity`` command. + - ``.source``: The ``BUS:B:ARINC429A:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemArinc429aBitrate(device, f"{self._cmd_syntax}:BITRate") + self._data = BusBItemArinc429aData(device, f"{self._cmd_syntax}:DATA") + self._polarity = BusBItemArinc429aPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemArinc429aSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemArinc429aBitrate: + """Return the ``BUS:B:ARINC429A:BITRate`` command. + + Description: + - This command specifies the bit rate for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:BITRate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:BITRate {LOW|HI|} + - BUS:B:ARINC429A:BITRate? + ``` + + Info: + - ``LOW`` sets the ARINC429 bit rate to handle low speed signals (12000 bits-per-second + to 14500 bits-per-second). + - ``HI`` sets the ARINC429 bit rate to handle high speed signals (100,000 + bits-per-second). + - ```` is a bit rate in bits-per-second. You can enter any positive integer, and + the instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def data(self) -> BusBItemArinc429aData: + """Return the ``BUS:B:ARINC429A:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``BUS:B:ARINC429A:DATA:FORMAT`` command. + """ + return self._data + + @property + def polarity(self) -> BusBItemArinc429aPolarity: + """Return the ``BUS:B:ARINC429A:POLarity`` command. + + Description: + - This command sets the polarity of the ARINC429 bus (normal or inverted). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:POLarity {NORMal|INVERTed} + - BUS:B:ARINC429A:POLarity? + ``` + + Info: + - ``NORMal`` - A positive differential pulse in the first half of a bit period that then + returns to zero differential represents a 1 on the differential source. + - ``INVERTed`` - A positive differential pulse in the first half of a bit period that + then returns to zero differential represents a 0 on the differential source. + """ + return self._polarity + + @property + def source(self) -> BusBItemArinc429aSource: + """Return the ``BUS:B:ARINC429A:SOUrce`` command. + + Description: + - This command specifies the source for the differential input for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:SOUrce {CH|MATH|REF} + - BUS:B:ARINC429A:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for the differential input. + - ``MATH`` specifies the math waveform as the source for differential input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + return self._source + + +# pylint: disable=too-many-instance-attributes +class BusBItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.arinc429a``: The ``BUS:B:ARINC429A`` command tree. + - ``.audio``: The ``BUS:B:AUDio`` command tree. + - ``.can``: The ``BUS:B:CAN`` command tree. + - ``.display``: The ``BUS:B:DISplay`` command tree. + - ``.ethernet``: The ``BUS:B:ETHERnet`` command tree. + - ``.flexray``: The ``BUS:B:FLEXray`` command tree. + - ``.i2c``: The ``BUS:B:I2C`` command tree. + - ``.label``: The ``BUS:B:LABel`` command. + - ``.lin``: The ``BUS:B:LIN`` command tree. + - ``.mil1553b``: The ``BUS:B:MIL1553B`` command tree. + - ``.parallel``: The ``BUS:B:PARallel`` command tree. + - ``.position``: The ``BUS:B:POSition`` command. + - ``.rs232c``: The ``BUS:B:RS232C`` command tree. + - ``.spi``: The ``BUS:B:SPI`` command tree. + - ``.state``: The ``BUS:B:STATE`` command. + - ``.type``: The ``BUS:B:TYPe`` command. + - ``.usb``: The ``BUS:B:USB`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._arinc429a = BusBItemArinc429a(device, f"{self._cmd_syntax}:ARINC429A") + self._audio = BusBItemAudio(device, f"{self._cmd_syntax}:AUDio") + self._can = BusBItemCan(device, f"{self._cmd_syntax}:CAN") + self._display = BusBItemDisplay(device, f"{self._cmd_syntax}:DISplay") + self._ethernet = BusBItemEthernet(device, f"{self._cmd_syntax}:ETHERnet") + self._flexray = BusBItemFlexray(device, f"{self._cmd_syntax}:FLEXray") + self._i2c = BusBItemI2c(device, f"{self._cmd_syntax}:I2C") + self._label = BusBItemLabel(device, f"{self._cmd_syntax}:LABel") + self._lin = BusBItemLin(device, f"{self._cmd_syntax}:LIN") + self._mil1553b = BusBItemMil1553b(device, f"{self._cmd_syntax}:MIL1553B") + self._parallel = BusBItemParallel(device, f"{self._cmd_syntax}:PARallel") + self._position = BusBItemPosition(device, f"{self._cmd_syntax}:POSition") + self._rs232c = BusBItemRs232c(device, f"{self._cmd_syntax}:RS232C") + self._spi = BusBItemSpi(device, f"{self._cmd_syntax}:SPI") + self._state = BusBItemState(device, f"{self._cmd_syntax}:STATE") + self._type = BusBItemType(device, f"{self._cmd_syntax}:TYPe") + self._usb = BusBItemUsb(device, f"{self._cmd_syntax}:USB") + + @property + def arinc429a(self) -> BusBItemArinc429a: + """Return the ``BUS:B:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:ARINC429A:BITRate`` command. + - ``.data``: The ``BUS:B:ARINC429A:DATA`` command tree. + - ``.polarity``: The ``BUS:B:ARINC429A:POLarity`` command. + - ``.source``: The ``BUS:B:ARINC429A:SOUrce`` command. + """ + return self._arinc429a + + @property + def audio(self) -> BusBItemAudio: + """Return the ``BUS:B:AUDio`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitdelay``: The ``BUS:B:AUDio:BITDelay`` command. + - ``.bitorder``: The ``BUS:B:AUDio:BITOrder`` command. + - ``.channel``: The ``BUS:B:AUDio:CHANnel`` command tree. + - ``.clock``: The ``BUS:B:AUDio:CLOCk`` command tree. + - ``.data``: The ``BUS:B:AUDio:DATa`` command tree. + - ``.display``: The ``BUS:B:AUDio:DISplay`` command tree. + - ``.frame``: The ``BUS:B:AUDio:FRAME`` command tree. + - ``.framesync``: The ``BUS:B:AUDio:FRAMESync`` command tree. + - ``.type``: The ``BUS:B:AUDio:TYPe`` command. + - ``.wordsel``: The ``BUS:B:AUDio:WORDSel`` command tree. + """ + return self._audio + + @property + def can(self) -> BusBItemCan: + """Return the ``BUS:B:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CAN:BITRate`` command. + - ``.fd``: The ``BUS:B:CAN:FD`` command tree. + - ``.probe``: The ``BUS:B:CAN:PRObe`` command. + - ``.samplepoint``: The ``BUS:B:CAN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:CAN:SOUrce`` command. + - ``.standard``: The ``BUS:B:CAN:STANDard`` command. + """ + return self._can + + @property + def display(self) -> BusBItemDisplay: + """Return the ``BUS:B:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``BUS:B:DISplay:FORMat`` command. + - ``.type``: The ``BUS:B:DISplay:TYPe`` command. + """ + return self._display + + @property + def ethernet(self) -> BusBItemEthernet: + """Return the ``BUS:B:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.protocol``: The ``BUS:B:ETHERnet:PROTOcol`` command. + - ``.probe``: The ``BUS:B:ETHERnet:PRObe`` command. + - ``.source``: The ``BUS:B:ETHERnet:SOUrce`` command tree. + - ``.type``: The ``BUS:B:ETHERnet:TYPe`` command. + """ + return self._ethernet + + @property + def flexray(self) -> BusBItemFlexray: + """Return the ``BUS:B:FLEXray`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:FLEXray:BITRate`` command. + - ``.channel``: The ``BUS:B:FLEXray:CHannel`` command. + - ``.signal``: The ``BUS:B:FLEXray:SIGnal`` command. + - ``.source``: The ``BUS:B:FLEXray:SOUrce`` command. + """ + return self._flexray + + @property + def i2c(self) -> BusBItemI2c: + """Return the ``BUS:B:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``BUS:B:I2C:ADDRess`` command tree. + - ``.clock``: The ``BUS:B:I2C:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:I2C:SCLk`` command tree. + - ``.data``: The ``BUS:B:I2C:DATa`` command tree. + - ``.sdata``: The ``BUS:B:I2C:SDAta`` command tree. + """ + return self._i2c + + @property + def label(self) -> BusBItemLabel: + """Return the ``BUS:B:LABel`` command. + + Description: + - Specifies the waveform label for the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel + - BUS:B:LABel? + ``` + + Info: + - ```` is an alphanumeric string of text, enclosed in quotes, that contains the + text label information for bus . The text string is limited to 30 characters. + """ + return self._label + + @property + def lin(self) -> BusBItemLin: + """Return the ``BUS:B:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:LIN:BITRate`` command. + - ``.idformat``: The ``BUS:B:LIN:IDFORmat`` command. + - ``.maxbytedelim``: The ``BUS:B:LIN:MAXBytedelim`` command. + - ``.polarity``: The ``BUS:B:LIN:POLarity`` command. + - ``.samplepoint``: The ``BUS:B:LIN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:LIN:SOUrce`` command. + - ``.standard``: The ``BUS:B:LIN:STANDard`` command. + """ + return self._lin + + @property + def mil1553b(self) -> BusBItemMil1553b: + """Return the ``BUS:B:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.polarity``: The ``BUS:B:MIL1553B:POLarity`` command. + - ``.responsetime``: The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + - ``.source``: The ``BUS:B:MIL1553B:SOUrce`` command. + """ + return self._mil1553b + + @property + def parallel(self) -> BusBItemParallel: + """Return the ``BUS:B:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bit``: The ``BUS:B:PARallel:BIT`` command tree. + - ``.clock``: The ``BUS:B:PARallel:CLOCk`` command tree. + - ``.width``: The ``BUS:B:PARallel:WIDth`` command. + """ + return self._parallel + + @property + def position(self) -> BusBItemPosition: + """Return the ``BUS:B:POSition`` command. + + Description: + - This command specifies the position of the bus waveform on the display. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:POSition?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:POSition value`` command. + + SCPI Syntax: + ``` + - BUS:B:POSition + - BUS:B:POSition? + ``` + + Info: + - ```` is a floating point number that specifies the position of the bus + waveform on the display. + """ + return self._position + + @property + def rs232c(self) -> BusBItemRs232c: + """Return the ``BUS:B:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:RS232C:BITRate`` command. + - ``.databits``: The ``BUS:B:RS232C:DATABits`` command. + - ``.delimiter``: The ``BUS:B:RS232C:DELIMiter`` command. + - ``.displaymode``: The ``BUS:B:RS232C:DISplaymode`` command. + - ``.parity``: The ``BUS:B:RS232C:PARity`` command. + - ``.polarity``: The ``BUS:B:RS232C:POLarity`` command. + - ``.rx``: The ``BUS:B:RS232C:RX`` command tree. + - ``.tx``: The ``BUS:B:RS232C:TX`` command tree. + """ + return self._rs232c + + @property + def spi(self) -> BusBItemSpi: + """Return the ``BUS:B:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.bitorder``: The ``BUS:B:SPI:BITOrder`` command. + - ``.data``: The ``BUS:B:SPI:DATa`` command tree. + - ``.framing``: The ``BUS:B:SPI:FRAMING`` command. + - ``.idletime``: The ``BUS:B:SPI:IDLETime`` command. + - ``.clock``: The ``BUS:B:SPI:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:SPI:SCLk`` command tree. + - ``.select``: The ``BUS:B:SPI:SELect`` command tree. + - ``.ss``: The ``BUS:B:SPI:SS`` command tree. + """ + return self._spi + + @property + def state(self) -> BusBItemState: + """Return the ``BUS:B:STATE`` command. + + Description: + - This command specifies the on/off state of the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:STATE?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:STATE value`` command. + + SCPI Syntax: + ``` + - BUS:B:STATE {ON|OFF|} + - BUS:B:STATE? + ``` + + Info: + - ``ON`` or ≠ 0 turns on the bus. + - ``OFF`` or = 0 turns off the bus. + """ + return self._state + + @property + def type(self) -> BusBItemType: + """Return the ``BUS:B:TYPe`` command. + + Description: + - This command specifies (or queries) the bus type. The supported bus types are + dependent on the oscilloscope model and the installed application models. With the + exception of the parallel bus, all bus types require installation of an application + option. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:TYPe {I2C|SPI|CAN|RS232C|PARallel|USB|LIN|FLEXRay|AUDio|ETHERnet|MIL1553B|ARINC429A} + - BUS:B:TYPe? + ``` + + Info: + - ``I2C`` specifies the Inter-IC bus. + - ``SPI`` specifies the Serial Peripheral Interface bus (not available on two-channel + models). + - ``CAN`` specifies the Controller Area Network bus. + - ``RS232C`` specifies the RS-232C bus. + - ``PARallel`` specifies the Parallel bus. + - ``USB`` specifies the USB bus. + - ``LIN`` specifies the LIN bus. + - ``FLEXRay`` specifies the FLexRay bus. + - ``AUDio`` specifies the audio bus. + - ``ETHERnet`` specifies the Ethernet bus. + - ``MIL1553B`` specifies the MIL-STD-1553 bus. + - ``ARINC429A`` specifies the Aeronautical Radio INC (specification 429) bus. + """ # noqa: E501 + return self._type + + @property + def usb(self) -> BusBItemUsb: + """Return the ``BUS:B:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:USB:BITRate`` command. + - ``.probe``: The ``BUS:B:USB:PRObe`` command. + - ``.source``: The ``BUS:B:USB:SOUrce`` command tree. + """ + return self._usb + + +class Bus(SCPICmdRead): + """The ``BUS`` command. + + Description: + - Returns the parameters for each serial (if installed) and parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - BUS? + ``` + + Properties: + - ``.b``: The ``BUS:B`` command tree. + - ``.lowerthreshold``: The ``BUS:LOWerthreshold`` command tree. + - ``.threshold``: The ``BUS:THReshold`` command tree. + - ``.upperthreshold``: The ``BUS:UPPerthreshold`` command tree. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "BUS") -> None: + super().__init__(device, cmd_syntax) + self._b: Dict[int, BusBItem] = DefaultDictPassKeyToFactory( + lambda x: BusBItem(device, f"{self._cmd_syntax}:B{x}") + ) + self._lowerthreshold = BusLowerthreshold(device, f"{self._cmd_syntax}:LOWerthreshold") + self._threshold = BusThreshold(device, f"{self._cmd_syntax}:THReshold") + self._upperthreshold = BusUpperthreshold(device, f"{self._cmd_syntax}:UPPerthreshold") + + @property + def b(self) -> Dict[int, BusBItem]: + """Return the ``BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.arinc429a``: The ``BUS:B:ARINC429A`` command tree. + - ``.audio``: The ``BUS:B:AUDio`` command tree. + - ``.can``: The ``BUS:B:CAN`` command tree. + - ``.display``: The ``BUS:B:DISplay`` command tree. + - ``.ethernet``: The ``BUS:B:ETHERnet`` command tree. + - ``.flexray``: The ``BUS:B:FLEXray`` command tree. + - ``.i2c``: The ``BUS:B:I2C`` command tree. + - ``.label``: The ``BUS:B:LABel`` command. + - ``.lin``: The ``BUS:B:LIN`` command tree. + - ``.mil1553b``: The ``BUS:B:MIL1553B`` command tree. + - ``.parallel``: The ``BUS:B:PARallel`` command tree. + - ``.position``: The ``BUS:B:POSition`` command. + - ``.rs232c``: The ``BUS:B:RS232C`` command tree. + - ``.spi``: The ``BUS:B:SPI`` command tree. + - ``.state``: The ``BUS:B:STATE`` command. + - ``.type``: The ``BUS:B:TYPe`` command. + - ``.usb``: The ``BUS:B:USB`` command tree. + """ + return self._b + + @property + def lowerthreshold(self) -> BusLowerthreshold: + """Return the ``BUS:LOWerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``BUS:LOWerthreshold:CH`` command. + - ``.ref``: The ``BUS:LOWerthreshold:REF`` command. + - ``.math``: The ``BUS:LOWerthreshold:MATH`` command. + - ``.math1``: The ``BUS:LOWerthreshold:MATH1`` command. + """ + return self._lowerthreshold + + @property + def threshold(self) -> BusThreshold: + """Return the ``BUS:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``BUS:THReshold:CH`` command. + - ``.d``: The ``BUS:THReshold:D`` command. + """ + return self._threshold + + @property + def upperthreshold(self) -> BusUpperthreshold: + """Return the ``BUS:UPPerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``BUS:UPPerthreshold:CH`` command. + - ``.ref``: The ``BUS:UPPerthreshold:REF`` command. + - ``.math``: The ``BUS:UPPerthreshold:MATH`` command. + - ``.math1``: The ``BUS:UPPerthreshold:MATH1`` command. + """ + return self._upperthreshold diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/histogram.py b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/histogram.py similarity index 99% rename from src/tm_devices/commands/gen_1ltpwt_mdomsodpo/histogram.py rename to src/tm_devices/commands/gen_1mlt9u_mdomsodpo/histogram.py index 9809adce..fe45a85f 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/histogram.py +++ b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/histogram.py @@ -1,7 +1,7 @@ """The histogram commands module. These commands are used in the following models: -DPO4K, DPO4KB, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO4K, MSO4KB +DPO4K, DPO4KB, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO4K, MSO4KB THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. @@ -43,7 +43,7 @@ class HistogramStart(SCPICmdRead): the histogram data starts. The ``HISTOGRAM:MODE`` must be either HORizontal or VERTical for a value to be returned. If the mode is OFF, an error event is set and nothing is returned. If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is the time of the - left bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units + left bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units value of the top bin. The returned value is an . Usage: @@ -123,7 +123,7 @@ class HistogramEnd(SCPICmdRead): histogram data ends. The ``HISTOGRAM:MODE`` must be either HORizontal or VERTical for a value to be returned. If the mode is OFF, an error event is set and nothing is returned. If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is the time of the right bin. - If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units value of + If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units value of the bottom bin. The returned value is an . Usage: @@ -474,7 +474,7 @@ def end(self) -> HistogramEnd: the histogram data ends. The ``HISTOGRAM:MODE`` must be either HORizontal or VERTical for a value to be returned. If the mode is OFF, an error event is set and nothing is returned. If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is the time of - the right bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is the + the right bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units value of the bottom bin. The returned value is an . Usage: diff --git a/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/measurement.py b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/measurement.py index 431ffceb..baa79070 100644 --- a/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/measurement.py +++ b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/measurement.py @@ -3413,10 +3413,9 @@ class MeasurementImmedSource1(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` is the analog channel to use as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` is the analog channel to use as the source waveform. - ``MATH`` is the math waveform. - - ``D0 - D15`` is the digital waveform to use as the source waveform. (On models with option + - ``D`` is the digital waveform to use as the source waveform. (On models with option 3-MSO installed.). - ``HIStogram`` indicates the histogram as the object to be measured. HIStogram only applies to SOUrce1; it is not available for SOUrce2. @@ -3653,11 +3652,10 @@ def source1(self) -> MeasurementImmedSource1: ``` Info: - - ``CH`` is the analog channel to use as the source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` is the analog channel to use as the source waveform. - ``MATH`` is the math waveform. - - ``D0 - D15`` is the digital waveform to use as the source waveform. (On models with - option 3-MSO installed.). + - ``D`` is the digital waveform to use as the source waveform. (On models with option + 3-MSO installed.). - ``HIStogram`` indicates the histogram as the object to be measured. HIStogram only applies to SOUrce1; it is not available for SOUrce2. """ # noqa: E501 diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/save.py b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/save.py similarity index 99% rename from src/tm_devices/commands/gen_1ltpwt_mdomsodpo/save.py rename to src/tm_devices/commands/gen_1mlt9u_mdomsodpo/save.py index ce6e0bf1..a9d672bd 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/save.py +++ b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/save.py @@ -1,7 +1,7 @@ """The save commands module. These commands are used in the following models: -DPO4K, DPO4KB, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO4K, MSO4KB +DPO4K, DPO4KB, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO4K, MSO4KB THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. @@ -176,7 +176,7 @@ class SaveWaveform(SCPICmdWrite, SCPICmdRead): """The ``SAVe:WAVEform`` command. Description: - - This command saves the specified waveform to the specified destination reference memory, + - This command saves the specified waveform to the specified destination reference memory, or saves the specified waveform(s) to the specified destination file. Usage: @@ -897,7 +897,7 @@ def waveform(self) -> SaveWaveform: """Return the ``SAVe:WAVEform`` command. Description: - - This command saves the specified waveform to the specified destination reference + - This command saves the specified waveform to the specified destination reference memory, or saves the specified waveform(s) to the specified destination file. Usage: diff --git a/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/select.py b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/select.py index 8e45e9ec..907e29dd 100644 --- a/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/select.py +++ b/src/tm_devices/commands/gen_1mlt9u_mdomsodpo/select.py @@ -387,13 +387,12 @@ class SelectControl(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies a channel waveform as the waveform affected by the front-panel - controls. x has a minimum of 1 and a maximum of 4. + controls. - ``MATH`` specifies the math waveform as the waveform that is affected by the front-panel controls. - ``BUS`` specifies a bus waveform as the waveform affected by the front-panel controls. - x has a minimum of 1 and a maximum of 4. - ``D`` specifies a digital waveform as the waveform affected by the front-panel - controls. (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + controls. (Requires option 3-MSO.). - ``RF_NORMal`` specify an RF trace as the waveform affected by the front-panel controls. - ``RF_AVErage`` specify an RF trace as the waveform affected by the front-panel controls. - ``RF_MAXHold`` specify an RF trace as the waveform affected by the front-panel controls. @@ -602,13 +601,13 @@ def control(self) -> SelectControl: Info: - ``CH`` specifies a channel waveform as the waveform affected by the front-panel - controls. x has a minimum of 1 and a maximum of 4. + controls. - ``MATH`` specifies the math waveform as the waveform that is affected by the front-panel controls. - ``BUS`` specifies a bus waveform as the waveform affected by the front-panel - controls. x has a minimum of 1 and a maximum of 4. + controls. - ``D`` specifies a digital waveform as the waveform affected by the front-panel - controls. (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + controls. (Requires option 3-MSO.). - ``RF_NORMal`` specify an RF trace as the waveform affected by the front-panel controls. - ``RF_AVErage`` specify an RF trace as the waveform affected by the front-panel diff --git a/src/tm_devices/commands/gen_1msu49_msodpo/__init__.py b/src/tm_devices/commands/gen_1msu49_msodpo/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_1msu49_msodpo/mark.py b/src/tm_devices/commands/gen_1msu49_msodpo/mark.py new file mode 100644 index 00000000..033457c1 --- /dev/null +++ b/src/tm_devices/commands/gen_1msu49_msodpo/mark.py @@ -0,0 +1,646 @@ +"""The mark commands module. + +These commands are used in the following models: +DPO4K, DPO4KB, MSO4K + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - MARK {NEXT|PREVious} + - MARK:FREE? + - MARK:SAVEALL TOUSER + - MARK:SELected:END? + - MARK:SELected:FOCUS? + - MARK:SELected:MARKSINCOLumn? + - MARK:SELected:OWNer? + - MARK:SELected:SOURCe? + - MARK:SELected:STARt? + - MARK:SELected:STATE? + - MARK:SELected:ZOOm:POSition? + - MARK:TOTal? + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + - MARK? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class MarkUserlist(SCPICmdWrite, SCPICmdRead): + """The ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the command + form if any of the following conditions are true: The source waveform is not turned on. + The position of the mark is not on the waveform. The maximum number of marks would be + exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + + +class MarkTotal(SCPICmdRead): + """The ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + + +class MarkSelectedZoomPosition(SCPICmdRead): + """The ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + + +class MarkSelectedZoom(SCPICmdRead): + """The ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._position = MarkSelectedZoomPosition(device, f"{self._cmd_syntax}:POSition") + + @property + def position(self) -> MarkSelectedZoomPosition: + """Return the ``MARK:SELected:ZOOm:POSition`` command. + + Description: + - Returns the position of the selected mark, 0 to 100% of the zoom overview window. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm:POSition?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:ZOOm:POSition? + ``` + """ + return self._position + + +class MarkSelectedState(SCPICmdRead): + """The ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + + +class MarkSelectedStart(SCPICmdRead): + """The ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + + +class MarkSelectedSource(SCPICmdRead): + """The ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + + +class MarkSelectedOwner(SCPICmdRead): + """The ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + + +class MarkSelectedMarksincolumn(SCPICmdRead): + """The ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query + and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + + +class MarkSelectedFocus(SCPICmdRead): + """The ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + + +class MarkSelectedEnd(SCPICmdRead): + """The ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + + +# pylint: disable=too-many-instance-attributes +class MarkSelected(SCPICmdRead): + """The ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._end = MarkSelectedEnd(device, f"{self._cmd_syntax}:END") + self._focus = MarkSelectedFocus(device, f"{self._cmd_syntax}:FOCUS") + self._marksincolumn = MarkSelectedMarksincolumn(device, f"{self._cmd_syntax}:MARKSINCOLumn") + self._owner = MarkSelectedOwner(device, f"{self._cmd_syntax}:OWNer") + self._source = MarkSelectedSource(device, f"{self._cmd_syntax}:SOURCe") + self._start = MarkSelectedStart(device, f"{self._cmd_syntax}:STARt") + self._state = MarkSelectedState(device, f"{self._cmd_syntax}:STATE") + self._zoom = MarkSelectedZoom(device, f"{self._cmd_syntax}:ZOOm") + + @property + def end(self) -> MarkSelectedEnd: + """Return the ``MARK:SELected:END`` command. + + Description: + - Returns the end of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:END?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:END?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:END? + ``` + """ + return self._end + + @property + def focus(self) -> MarkSelectedFocus: + """Return the ``MARK:SELected:FOCUS`` command. + + Description: + - Returns the focus of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:FOCUS?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:FOCUS?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:FOCUS? + ``` + """ + return self._focus + + @property + def marksincolumn(self) -> MarkSelectedMarksincolumn: + """Return the ``MARK:SELected:MARKSINCOLumn`` command. + + Description: + - Returns the number of marks in the current zoom pixel column. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:MARKSINCOLumn?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:MARKSINCOLumn?`` + query and raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:MARKSINCOLumn? + ``` + """ + return self._marksincolumn + + @property + def owner(self) -> MarkSelectedOwner: + """Return the ``MARK:SELected:OWNer`` command. + + Description: + - Returns the owner of the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:OWNer?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:OWNer?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:OWNer? + ``` + """ + return self._owner + + @property + def source(self) -> MarkSelectedSource: + """Return the ``MARK:SELected:SOURCe`` command. + + Description: + - Returns the source waveform for the selected mark. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:SOURCe?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:SOURCe?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:SOURCe? + ``` + """ + return self._source + + @property + def start(self) -> MarkSelectedStart: + """Return the ``MARK:SELected:STARt`` command. + + Description: + - Returns the starting point of the selected mark, 0 to 100% of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STARt?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STARt? + ``` + """ + return self._start + + @property + def state(self) -> MarkSelectedState: + """Return the ``MARK:SELected:STATE`` command. + + Description: + - Returns the on or off state of the selected mark. The selected mark is at or near the + center of the screen. If you press the front-panel Set/Clear button, this mark will + disappear. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:STATE?`` query and + raise an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:SELected:STATE? + ``` + """ + return self._state + + @property + def zoom(self) -> MarkSelectedZoom: + """Return the ``MARK:SELected:ZOOm`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected:ZOOm?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected:ZOOm?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.position``: The ``MARK:SELected:ZOOm:POSition`` command. + """ + return self._zoom + + +class MarkSaveall(SCPICmdWrite): + """The ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user search + mark list in internal memory. (This is equivalent to pressing the 'Save All Marks' button + in the Search button menu on the front panel.) In order to retrieve the information, use + the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + + +class MarkFree(SCPICmdRead): + """The ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + + +class Mark(SCPICmdWrite, SCPICmdRead): + """The ``MARK`` command. + + Description: + - Moves to the next or previous reference mark on the waveform. Returns the current mark + position. + + Usage: + - Using the ``.query()`` method will send the ``MARK?`` query. + - Using the ``.verify(value)`` method will send the ``MARK?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK value`` command. + + SCPI Syntax: + ``` + - MARK {NEXT|PREVious} + - MARK? + ``` + + Info: + - ``NEXT`` moves to the next reference mark on the right. + - ``PREVious`` moves to the next reference mark on the left. + + Properties: + - ``.free``: The ``MARK:FREE`` command. + - ``.saveall``: The ``MARK:SAVEALL`` command. + - ``.selected``: The ``MARK:SELected`` command tree. + - ``.total``: The ``MARK:TOTal`` command. + - ``.userlist``: The ``MARK:USERLIST`` command. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "MARK") -> None: + super().__init__(device, cmd_syntax) + self._free = MarkFree(device, f"{self._cmd_syntax}:FREE") + self._saveall = MarkSaveall(device, f"{self._cmd_syntax}:SAVEALL") + self._selected = MarkSelected(device, f"{self._cmd_syntax}:SELected") + self._total = MarkTotal(device, f"{self._cmd_syntax}:TOTal") + self._userlist = MarkUserlist(device, f"{self._cmd_syntax}:USERLIST") + + @property + def free(self) -> MarkFree: + """Return the ``MARK:FREE`` command. + + Description: + - Returns how many marks are available for use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:FREE?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:FREE?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:FREE? + ``` + """ + return self._free + + @property + def saveall(self) -> MarkSaveall: + """Return the ``MARK:SAVEALL`` command. + + Description: + - This command saves all current marks on waveforms in the time domain to the user + search mark list in internal memory. (This is equivalent to pressing the 'Save All + Marks' button in the Search button menu on the front panel.) In order to retrieve the + information, use the query form of ``MARK:USERLIST``. + + Usage: + - Using the ``.write(value)`` method will send the ``MARK:SAVEALL value`` command. + + SCPI Syntax: + ``` + - MARK:SAVEALL TOUSER + ``` + """ + return self._saveall + + @property + def selected(self) -> MarkSelected: + """Return the ``MARK:SELected`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``MARK:SELected?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:SELected?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.end``: The ``MARK:SELected:END`` command. + - ``.focus``: The ``MARK:SELected:FOCUS`` command. + - ``.marksincolumn``: The ``MARK:SELected:MARKSINCOLumn`` command. + - ``.owner``: The ``MARK:SELected:OWNer`` command. + - ``.source``: The ``MARK:SELected:SOURCe`` command. + - ``.start``: The ``MARK:SELected:STARt`` command. + - ``.state``: The ``MARK:SELected:STATE`` command. + - ``.zoom``: The ``MARK:SELected:ZOOm`` command tree. + """ + return self._selected + + @property + def total(self) -> MarkTotal: + """Return the ``MARK:TOTal`` command. + + Description: + - Returns how many marks are currently in use. There can be a total of 1,024 marks + returned. + + Usage: + - Using the ``.query()`` method will send the ``MARK:TOTal?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:TOTal?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - MARK:TOTal? + ``` + """ + return self._total + + @property + def userlist(self) -> MarkUserlist: + """Return the ``MARK:USERLIST`` command. + + Description: + - The command creates a single user mark on a waveform in the time domain. The arguments + consist of an enumeration specifying the source waveform, followed by 7 time mark + parameters. You can create up to 1,024 marks. To save all the marks to memory, use the + command ``MARK:SAVEALL TOUSER``. The query form retrieves a list of all user marks, + separated by a semicolon. To retrieve the list of all system generated marks, use the + command ``SEARCH:SEARCHX:LIST A`` 'Settings conflict' error event is set for the + command form if any of the following conditions are true: The source waveform is not + turned on. The position of the mark is not on the waveform. The maximum number of + marks would be exceeded. + + Usage: + - Using the ``.query()`` method will send the ``MARK:USERLIST?`` query. + - Using the ``.verify(value)`` method will send the ``MARK:USERLIST?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``MARK:USERLIST value`` command. + + SCPI Syntax: + ``` + - MARK:USERLIST ,,,,,,, + - MARK:USERLIST? + ``` + + Info: + - ``CH`` - analog channels 1-4. + - ``B`` - serial (if installed) or parallel bus 1-4. + - ``MATH`` - math waveform. + - ``REF`` - reference waveforms 1-4. + - ``D0 - D15`` - digital channels 0 - 15 (Requires installation of option 3-MSO.). + """ + return self._userlist diff --git a/src/tm_devices/commands/gen_4jiykk_dpo/errordetector.py b/src/tm_devices/commands/gen_4jiykk_dpo/errordetector.py index f10a27ae..832f1694 100644 --- a/src/tm_devices/commands/gen_4jiykk_dpo/errordetector.py +++ b/src/tm_devices/commands/gen_4jiykk_dpo/errordetector.py @@ -124,7 +124,7 @@ - ERRORDetector:SCRAMBLED? - ERRORDetector:SENDEMAIL {OFF|ON} - ERRORDetector:SENDEMAIL? - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? - ERRORDetector:SSC {ON|OFF} - ERRORDetector:SSC? @@ -1393,7 +1393,7 @@ class ErrordetectorSignaltype(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? ``` @@ -5736,7 +5736,7 @@ def signaltype(self) -> ErrordetectorSignaltype: SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? ``` diff --git a/src/tm_devices/commands/gen_4jiykk_dpo/rosc.py b/src/tm_devices/commands/gen_4jiykk_dpo/rosc.py index fd92aade..9cee9a09 100644 --- a/src/tm_devices/commands/gen_4jiykk_dpo/rosc.py +++ b/src/tm_devices/commands/gen_4jiykk_dpo/rosc.py @@ -13,7 +13,7 @@ - ROSc:OUT:FREQuency? - ROSc:OUT:ULTRAsync {OFF|ON} - ROSc:OUT:ULTRAsync? - - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} + - ROSc:SOUrce {EXTernal|ULTRAsync|TEKLink|INTERnal} - ROSc:SOUrce? - ROSc:STATE? - ROSc:TRACking {STABle|FAST} @@ -94,7 +94,7 @@ class RoscSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} + - ROSc:SOUrce {EXTernal|ULTRAsync|TEKLink|INTERnal} - ROSc:SOUrce? ``` @@ -283,7 +283,7 @@ def source(self) -> RoscSource: SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} + - ROSc:SOUrce {EXTernal|ULTRAsync|TEKLink|INTERnal} - ROSc:SOUrce? ``` diff --git a/src/tm_devices/commands/gen_5xwdsk_dpodsamso/errordetector.py b/src/tm_devices/commands/gen_5xwdsk_dpodsamso/errordetector.py index f8470d80..87826b1c 100644 --- a/src/tm_devices/commands/gen_5xwdsk_dpodsamso/errordetector.py +++ b/src/tm_devices/commands/gen_5xwdsk_dpodsamso/errordetector.py @@ -148,7 +148,7 @@ - ERRORDetector:SCRAMBLED? - ERRORDetector:SENDEMAIL {OFF|ON} - ERRORDetector:SENDEMAIL? - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? - ERRORDetector:SKIPSETPRIMitive:MINus? - ERRORDetector:SKIPSETPRIMitive:PLUS? @@ -1725,7 +1725,7 @@ class ErrordetectorSignaltype(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? ``` @@ -7099,7 +7099,7 @@ def signaltype(self) -> ErrordetectorSignaltype: SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? ``` diff --git a/src/tm_devices/commands/gen_fk3z56_dpodsamso/wfminpre.py b/src/tm_devices/commands/gen_fk3z56_dpodsamso/wfminpre.py index ef4622a7..d41d8330 100644 --- a/src/tm_devices/commands/gen_fk3z56_dpodsamso/wfminpre.py +++ b/src/tm_devices/commands/gen_fk3z56_dpodsamso/wfminpre.py @@ -80,7 +80,7 @@ class WfminpreYzero(SCPICmdWrite, SCPICmdRead): Info: - ```` is a floating point number that specifies the offset in in units specified by - the ``WFMInpre:YUNitcommand`` (YUNits). + the ``WFMInpre:YUNit`` command (YUNits). """ @@ -1051,6 +1051,6 @@ def yzero(self) -> WfminpreYzero: Info: - ```` is a floating point number that specifies the offset in in units specified - by the ``WFMInpre:YUNitcommand`` (YUNits). + by the ``WFMInpre:YUNit`` command (YUNits). """ return self._yzero diff --git a/src/tm_devices/commands/gen_fn2qbf_msodpo/errordetector.py b/src/tm_devices/commands/gen_fn2qbf_msodpo/errordetector.py index 34f3a2ef..8d2c8989 100644 --- a/src/tm_devices/commands/gen_fn2qbf_msodpo/errordetector.py +++ b/src/tm_devices/commands/gen_fn2qbf_msodpo/errordetector.py @@ -122,7 +122,7 @@ - ERRORDetector:SCRAMBLED? - ERRORDetector:SENDEMAIL {OFF|ON} - ERRORDetector:SENDEMAIL? - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? - ERRORDetector:SSC {ON|OFF} - ERRORDetector:SSC? @@ -1391,7 +1391,7 @@ class ErrordetectorSignaltype(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? ``` @@ -5654,7 +5654,7 @@ def signaltype(self) -> ErrordetectorSignaltype: SCPI Syntax: ``` - - ERRORDetector:SIGnaltype {PRBS16|PCIEGEN|PRBS7|ANY8B10B|USB3|PRBS23|CUSTOM|PRBS9|SATAGEN|PRBS11} + - ERRORDetector:SIGnaltype {PRBS9|PRBS23|PRBS7|PRBS11|PRBS16|USB3|ANY8B10B|SATAGEN|CUSTOM|PCIEGEN} - ERRORDetector:SIGnaltype? ``` diff --git a/src/tm_devices/commands/gen_fpx9s1_dpodsamso/rosc.py b/src/tm_devices/commands/gen_fpx9s1_dpodsamso/rosc.py index a02eaaf1..b086e891 100644 --- a/src/tm_devices/commands/gen_fpx9s1_dpodsamso/rosc.py +++ b/src/tm_devices/commands/gen_fpx9s1_dpodsamso/rosc.py @@ -12,7 +12,7 @@ ``` - ROSc:OUT:FREQuency {MHZ10|MHZ100} - ROSc:OUT:FREQuency? - - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} + - ROSc:SOUrce {EXTernal|ULTRAsync|TEKLink|INTERnal} - ROSc:SOUrce? - ROSc:STATE? - ROSc:TRACking {STABle|FAST} @@ -93,7 +93,7 @@ class RoscSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} + - ROSc:SOUrce {EXTernal|ULTRAsync|TEKLink|INTERnal} - ROSc:SOUrce? ``` @@ -228,7 +228,7 @@ def source(self) -> RoscSource: SCPI Syntax: ``` - - ROSc:SOUrce {EXTernal|INTERnal|ULTRAsync|TEKLink} + - ROSc:SOUrce {EXTernal|ULTRAsync|TEKLink|INTERnal} - ROSc:SOUrce? ``` diff --git a/src/tm_devices/commands/gen_fzd77z_lpdmsotekscopepcdpomdodsa/__init__.py b/src/tm_devices/commands/gen_fzd77z_lpdmsotekscopepcdpomdodsa/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/header.py b/src/tm_devices/commands/gen_fzd77z_lpdmsotekscopepcdpomdodsa/header.py similarity index 95% rename from src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/header.py rename to src/tm_devices/commands/gen_fzd77z_lpdmsotekscopepcdpomdodsa/header.py index 886b70b2..f0eb1432 100644 --- a/src/tm_devices/commands/gen_fxvtmy_lpdmsotekscopepcdpomdodsa/header.py +++ b/src/tm_devices/commands/gen_fzd77z_lpdmsotekscopepcdpomdodsa/header.py @@ -2,7 +2,7 @@ These commands are used in the following models: DPO2K, DPO2KB, DPO4K, DPO4KB, DPO5K, DPO5KB, DPO70KC, DPO70KD, DPO70KDX, DPO70KSX, DPO7K, DPO7KC, -DSA70KC, DSA70KD, LPD6, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO2, MSO2K, MSO2KB, MSO4, MSO4B, MSO4K, +DSA70KC, DSA70KD, LPD6, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO2, MSO2K, MSO2KB, MSO4, MSO4B, MSO4K, MSO4KB, MSO5, MSO5B, MSO5K, MSO5KB, MSO5LP, MSO6, MSO6B, MSO70KC, MSO70KDX, TekScopePC THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. diff --git a/src/tm_devices/commands/gen_u301s_msodpo/bus.py b/src/tm_devices/commands/gen_u301s_msodpo/bus.py index cacca683..6c9d9482 100644 --- a/src/tm_devices/commands/gen_u301s_msodpo/bus.py +++ b/src/tm_devices/commands/gen_u301s_msodpo/bus.py @@ -500,10 +500,8 @@ class BusBItemSpiSsSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ @@ -597,10 +595,8 @@ def source(self) -> BusBItemSpiSsSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ return self._source @@ -625,10 +621,8 @@ class BusBItemSpiSelectSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ @@ -722,10 +716,8 @@ def source(self) -> BusBItemSpiSelectSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ return self._source @@ -2660,10 +2652,8 @@ class BusBItemParallelBitItemSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the bit source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the bit source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the bit source waveform. + - ``D`` specifies a digital channel as the bit source waveform. (Requires option 3-MSO.). """ @@ -2705,10 +2695,9 @@ def source(self) -> BusBItemParallelBitItemSource: ``` Info: - - ``CH`` specifies an analog channel as the bit source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the bit source waveform. - ``D`` specifies a digital channel as the bit source waveform. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -2835,10 +2824,8 @@ class BusBItemLinSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ @@ -3096,10 +3083,8 @@ def source(self) -> BusBItemLinSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.) - x has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). """ return self._source @@ -3626,8 +3611,7 @@ class BusBItemFlexraySource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. """ @@ -3837,8 +3821,7 @@ def source(self) -> BusBItemFlexraySource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. """ return self._source @@ -3990,10 +3973,9 @@ class BusBItemCanSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the data source waveform. - ``D`` specifies a digital channel as the data source waveform. (Requires installation - of option 3-MSO.) x has a minimum of 0 and a maximum of 15. + of option 3-MSO.). """ @@ -4200,10 +4182,9 @@ def source(self) -> BusBItemCanSource: ``` Info: - - ``CH`` specifies an analog channel as the data source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the data source waveform. - ``D`` specifies a digital channel as the data source waveform. (Requires - installation of option 3-MSO.) x has a minimum of 0 and a maximum of 15. + installation of option 3-MSO.). """ return self._source diff --git a/src/tm_devices/commands/gen_u301s_msodpo/math1.py b/src/tm_devices/commands/gen_u301s_msodpo/math1.py index 00519d04..c0cc7908 100644 --- a/src/tm_devices/commands/gen_u301s_msodpo/math1.py +++ b/src/tm_devices/commands/gen_u301s_msodpo/math1.py @@ -647,7 +647,7 @@ class Math1HorizontalScale(SCPICmdWrite, SCPICmdRead): Description: - This command specifies the math horizontal display scale for FFT or for dual math waveforms that have source waveforms that are reference waveforms. The horizontal scale of - a dual math waveform with a channel source waveform is set through the command. + a dual math waveform with a channel source waveform is set through the command. Usage: - Using the ``.query()`` method will send the ``MATH1:HORizontal:SCAle?`` query. diff --git a/src/tm_devices/commands/gen_u301s_msodpo/wfminpre.py b/src/tm_devices/commands/gen_u301s_msodpo/wfminpre.py index b866571c..c82e884c 100644 --- a/src/tm_devices/commands/gen_u301s_msodpo/wfminpre.py +++ b/src/tm_devices/commands/gen_u301s_msodpo/wfminpre.py @@ -81,7 +81,7 @@ class WfminpreYzero(SCPICmdWrite, SCPICmdRead): Info: - ```` is a floating point number that specifies the offset in in units specified by - the ``WFMInpre:YUNitcommand`` (YUNits). + the ``WFMInpre:YUNit`` command (YUNits). """ @@ -1068,6 +1068,6 @@ def yzero(self) -> WfminpreYzero: Info: - ```` is a floating point number that specifies the offset in in units specified - by the ``WFMInpre:YUNitcommand`` (YUNits). + by the ``WFMInpre:YUNit`` command (YUNits). """ return self._yzero diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/bus.py b/src/tm_devices/commands/gen_ujuvb_mdo/bus.py new file mode 100644 index 00000000..777b5b46 --- /dev/null +++ b/src/tm_devices/commands/gen_ujuvb_mdo/bus.py @@ -0,0 +1,8406 @@ +# pylint: disable=line-too-long +"""The bus commands module. + +These commands are used in the following models: +MDO3 + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - BUS:B:ARINC429A:BITRate {LOW|HI|} + - BUS:B:ARINC429A:BITRate? + - BUS:B:ARINC429A:DATA:FORMAT {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATA:FORMAT? + - BUS:B:ARINC429A:POLarity {NORMal|INVERTed} + - BUS:B:ARINC429A:POLarity? + - BUS:B:ARINC429A:SOUrce {CH|MATH|REF} + - BUS:B:ARINC429A:SOUrce? + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + - BUS:B:AUDio:CHANnel:SIZe + - BUS:B:AUDio:CHANnel:SIZe? + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISe} + - BUS:B:AUDio:CLOCk:POLarity? + - BUS:B:AUDio:CLOCk:SOUrce {CH|D} + - BUS:B:AUDio:CLOCk:SOUrce? + - BUS:B:AUDio:DATa:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:DATa:POLarity? + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + - BUS:B:AUDio:DATa:SOUrce {CH|D} + - BUS:B:AUDio:DATa:SOUrce? + - BUS:B:AUDio:DISplay:FORMat {BINary|HEXadecimal|SIGNEDDECimal} + - BUS:B:AUDio:DISplay:FORMat? + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + - BUS:B:AUDio:FRAMESync:POLarity {FALL|RISe} + - BUS:B:AUDio:FRAMESync:POLarity? + - BUS:B:AUDio:FRAMESync:SOUrce {CH|D} + - BUS:B:AUDio:FRAMESync:SOUrce? + - BUS:B:AUDio:TYPe {I2S|LJ|RJ|TDM} + - BUS:B:AUDio:TYPe? + - BUS:B:AUDio:WORDSel:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:WORDSel:POLarity? + - BUS:B:AUDio:WORDSel:SOUrce {CH|D} + - BUS:B:AUDio:WORDSel:SOUrce? + - BUS:B:CAN:BITRate + - BUS:B:CAN:BITRate? + - BUS:B:CAN:FD:BITRate + - BUS:B:CAN:FD:BITRate? + - BUS:B:CAN:FD:STANDard {ISO | NONISO} string + - BUS:B:CAN:FD:STANDard? + - BUS:B:CAN:PRObe {CANH|CANL|RX|TX|DIFFerential} + - BUS:B:CAN:PRObe? + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + - BUS:B:CAN:SOUrce {CH|D} + - BUS:B:CAN:SOUrce? + - BUS:B:CAN:STANDard {CAN2X|CANFD} string + - BUS:B:CAN:STANDard? + - BUS:B:DISplay:FORMat {BINary|HEXadecimal|ASCII|MIXed|MIXED2|BLOCKHEX} + - BUS:B:DISplay:FORMat? + - BUS:B:DISplay:TYPe {BUS|BOTh} + - BUS:B:DISplay:TYPe? + - BUS:B:ETHERnet:PROTOcol {IPv4|OTHER} + - BUS:B:ETHERnet:PROTOcol? + - BUS:B:ETHERnet:PRObe {DIFFerential|SINGleended} + - BUS:B:ETHERnet:PRObe? + - BUS:B:ETHERnet:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DIFFerential? + - BUS:B:ETHERnet:SOUrce:DMINus {CH|D} + - BUS:B:ETHERnet:SOUrce:DMINus? + - BUS:B:ETHERnet:SOUrce:DPLUs {CH|D} + - BUS:B:ETHERnet:SOUrce:DPLUs? + - BUS:B:ETHERnet:TYPe {ENET10BASET|ENET100BASETX} + - BUS:B:ETHERnet:TYPe? + - BUS:B:FLEXray:BITRate + - BUS:B:FLEXray:BITRate? + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + - BUS:B:FLEXray:SOUrce {CH|D} + - BUS:B:FLEXray:SOUrce? + - BUS:B:I2C:ADDRess:RWINClude {ON|OFF|} + - BUS:B:I2C:ADDRess:RWINClude? + - BUS:B:I2C:CLOCk:SOUrce {CH|D} + - BUS:B:I2C:CLOCk:SOUrce? + - BUS:B:I2C:DATa:SOUrce {CH|D} + - BUS:B:I2C:DATa:SOUrce? + - BUS:B:I2C:SCLk:SOUrce {CH|D} + - BUS:B:I2C:SCLk:SOUrce? + - BUS:B:I2C:SDAta:SOUrce {CH|D} + - BUS:B:I2C:SDAta:SOUrce? + - BUS:B:LABel + - BUS:B:LABel? + - BUS:B:LIN:BITRate + - BUS:B:LIN:BITRate? + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + - BUS:B:LIN:MAXBytedelim + - BUS:B:LIN:MAXBytedelim? + - BUS:B:LIN:POLarity {NORMal|INVerted} + - BUS:B:LIN:POLarity? + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + - BUS:B:LIN:SOUrce {CH|D} + - BUS:B:LIN:SOUrce? + - BUS:B:LIN:STANDard {V1X|V2X|MIXed} + - BUS:B:LIN:STANDard? + - BUS:B:MIL1553B:POLarity {NORMal|INVERTed} + - BUS:B:MIL1553B:POLarity? + - BUS:B:MIL1553B:RESPonsetime:MAXimum + - BUS:B:MIL1553B:RESPonsetime:MAXimum? + - BUS:B:MIL1553B:RESPonsetime:MINimum + - BUS:B:MIL1553B:RESPonsetime:MINimum? + - BUS:B:MIL1553B:SOUrce {CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + - BUS:B:PARallel:BIT:SOUrce {CH|D} + - BUS:B:PARallel:BIT:SOUrce? + - BUS:B:PARallel:CLOCk:EDGE {EITher|RISing|FALling} + - BUS:B:PARallel:CLOCk:EDGE? + - BUS:B:PARallel:CLOCk:ISCLOCKed {YES|NO} + - BUS:B:PARallel:CLOCk:ISCLOCKed? + - BUS:B:PARallel:CLOCk:SOUrce {CH|D} + - BUS:B:PARallel:CLOCk:SOUrce? + - BUS:B:PARallel:WIDth + - BUS:B:PARallel:WIDth? + - BUS:B:POSition + - BUS:B:POSition? + - BUS:B:RS232C:BITRate + - BUS:B:RS232C:BITRate? + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + - BUS:B:RS232C:DELIMiter {NULl|LF|CR|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + - BUS:B:RS232C:DISplaymode {FRAme|PACKET} + - BUS:B:RS232C:DISplaymode? + - BUS:B:RS232C:PARity {NONe|EVEN|ODD} + - BUS:B:RS232C:PARity? + - BUS:B:RS232C:POLarity {NORMal|INVERTed} + - BUS:B:RS232C:POLarity? + - BUS:B:RS232C:RX:SOUrce {CH|D|Off} + - BUS:B:RS232C:RX:SOUrce? + - BUS:B:RS232C:TX:SOUrce {CH|D|Off} + - BUS:B:RS232C:TX:SOUrce? + - BUS:B:SENT:CHANWidth {TWELVEtwelve|FOURTEENten|SIXTEENeight} + - BUS:B:SENT:CHANWidth? + - BUS:B:SENT:NIBBLECount {THREE|FOUR|SIX} + - BUS:B:SENT:NIBBLECount? + - BUS:B:SENT:NUMCHANnel {ONE|TWO} + - BUS:B:SENT:NUMCHANnel? + - BUS:B:SENT:PAUSEPULSe {NO|YES} + - BUS:B:SENT:PAUSEPULSe? + - BUS:B:SENT:POLARITY {INVerted|NORmal} + - BUS:B:SENT:POLARITY? + - BUS:B:SENT:SLOW {NOne|ENHANCED4|ENHANCED8|SHOrt} + - BUS:B:SENT:SLOW? + - BUS:B:SENT:SOUrce {CH|D|MATH|REF} + - BUS:B:SENT:SOUrce? + - BUS:B:SENT:TICKTIME + - BUS:B:SENT:TICKTIME? + - BUS:B:SENT:TICKTOLerance + - BUS:B:SENT:TICKTOLerance? + - BUS:B:SPI:BITOrder {LSB|MSB} + - BUS:B:SPI:BITOrder? + - BUS:B:SPI:CLOCk:POLarity {FALL|RISe} + - BUS:B:SPI:CLOCk:POLarity? + - BUS:B:SPI:CLOCk:SOUrce {CH|D} + - BUS:B:SPI:CLOCk:SOUrce? + - BUS:B:SPI:DATa:IN:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:IN:POLarity? + - BUS:B:SPI:DATa:IN:SOUrce {CH|D} + - BUS:B:SPI:DATa:IN:SOUrce? + - BUS:B:SPI:DATa:MISO:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MISO:POLarity? + - BUS:B:SPI:DATa:MISO:SOUrce {CH|D} + - BUS:B:SPI:DATa:MISO:SOUrce? + - BUS:B:SPI:DATa:MOSI:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MOSI:POLarity? + - BUS:B:SPI:DATa:MOSI:SOUrce {CH|D} + - BUS:B:SPI:DATa:MOSI:SOUrce? + - BUS:B:SPI:DATa:OUT:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:OUT:POLarity? + - BUS:B:SPI:DATa:OUT:SOUrce {CH|D} + - BUS:B:SPI:DATa:OUT:SOUrce? + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + - BUS:B:SPI:FRAMING {SS|IDLEtime} + - BUS:B:SPI:FRAMING? + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + - BUS:B:SPI:SCLk:POLarity {FALL|RISe} + - BUS:B:SPI:SCLk:POLarity? + - BUS:B:SPI:SCLk:SOUrce {CH|D} + - BUS:B:SPI:SCLk:SOUrce? + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + - BUS:B:SPI:SELect:SOUrce {CH|D} + - BUS:B:SPI:SELect:SOUrce? + - BUS:B:SPI:SS:POLarity {LOW|HIGH} + - BUS:B:SPI:SS:POLarity? + - BUS:B:SPI:SS:SOUrce {CH|D} + - BUS:B:SPI:SS:SOUrce? + - BUS:B:STATE {ON|OFF|} + - BUS:B:STATE? + - BUS:B:TYPe {I2C|SPI|CAN|RS232C|PARallel|USB|LIN|FLEXRay|AUDio|ETHERnet|MIL1553B|ARINC429A} + - BUS:B:TYPe? + - BUS:B:USB:BITRate {LOW|FULL|HIGH} + - BUS:B:USB:BITRate? + - BUS:B:USB:PRObe {DIFFerential|SINGleended} + - BUS:B:USB:PRObe? + - BUS:B:USB:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:USB:SOUrce:DIFFerential? + - BUS:B:USB:SOUrce:DMINus {CH|D} + - BUS:B:USB:SOUrce:DMINus? + - BUS:B:USB:SOUrce:DPLUs {CH|D} + - BUS:B:USB:SOUrce:DPLUs? + - BUS:LOWerthreshold:CH {|ECL|TTL} + - BUS:LOWerthreshold:CH? + - BUS:LOWerthreshold:MATH {|ECL|TTL} + - BUS:LOWerthreshold:MATH1 {|ECL|TTL} + - BUS:LOWerthreshold:MATH1? + - BUS:LOWerthreshold:MATH? + - BUS:LOWerthreshold:REF {|ECL|TTL} + - BUS:LOWerthreshold:REF? + - BUS:THReshold:CH {ECL|TTL|} + - BUS:THReshold:CH? + - BUS:THReshold:D {|ECL|TTL} + - BUS:THReshold:D? + - BUS:UPPerthreshold:CH {|ECL|TTL} + - BUS:UPPerthreshold:CH? + - BUS:UPPerthreshold:MATH {|ECL|TTL} + - BUS:UPPerthreshold:MATH1 {|ECL|TTL} + - BUS:UPPerthreshold:MATH1? + - BUS:UPPerthreshold:MATH? + - BUS:UPPerthreshold:REF {|ECL|TTL} + - BUS:UPPerthreshold:REF? + - BUS? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedChannel, + ValidatedDigitalBit, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class BusUpperthresholdRefItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:REF`` command. + + Description: + - This command sets the upper threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:REF {|ECL|TTL} + - BUS:UPPerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + + +class BusUpperthresholdMath1(SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:MATH1`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH1 {|ECL|TTL} + - BUS:UPPerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + + +class BusUpperthresholdMath(SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:MATH`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH {|ECL|TTL} + - BUS:UPPerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + + +class BusUpperthresholdChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``BUS:UPPerthreshold:CH`` command. + + Description: + - Sets the upper threshold for each analog channel (1-4). This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:CH {|ECL|TTL} + - BUS:UPPerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + + +class BusUpperthreshold(SCPICmdRead): + """The ``BUS:UPPerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``BUS:UPPerthreshold:CH`` command. + - ``.ref``: The ``BUS:UPPerthreshold:REF`` command. + - ``.math``: The ``BUS:UPPerthreshold:MATH`` command. + - ``.math1``: The ``BUS:UPPerthreshold:MATH1`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, BusUpperthresholdChannel] = DefaultDictPassKeyToFactory( + lambda x: BusUpperthresholdChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._ref: Dict[int, BusUpperthresholdRefItem] = DefaultDictPassKeyToFactory( + lambda x: BusUpperthresholdRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + self._math = BusUpperthresholdMath(device, f"{self._cmd_syntax}:MATH") + self._math1 = BusUpperthresholdMath1(device, f"{self._cmd_syntax}:MATH1") + + @property + def ch(self) -> Dict[int, BusUpperthresholdChannel]: + """Return the ``BUS:UPPerthreshold:CH`` command. + + Description: + - Sets the upper threshold for each analog channel (1-4). This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:CH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:CH {|ECL|TTL} + - BUS:UPPerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + return self._ch + + @property + def ref(self) -> Dict[int, BusUpperthresholdRefItem]: + """Return the ``BUS:UPPerthreshold:REF`` command. + + Description: + - This command sets the upper threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:REF {|ECL|TTL} + - BUS:UPPerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + return self._ref + + @property + def math(self) -> BusUpperthresholdMath: + """Return the ``BUS:UPPerthreshold:MATH`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH {|ECL|TTL} + - BUS:UPPerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + return self._math + + @property + def math1(self) -> BusUpperthresholdMath1: + """Return the ``BUS:UPPerthreshold:MATH1`` command. + + Description: + - This command specifies the upper threshold of the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold:MATH1?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:UPPerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:UPPerthreshold:MATH1 {|ECL|TTL} + - BUS:UPPerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the upper threshold of the math + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified math waveform. + """ + return self._math1 + + +class BusThresholdDigitalBit(ValidatedDigitalBit, SCPICmdWrite, SCPICmdRead): + """The ``BUS:THReshold:D`` command. + + Description: + - This command specifies the threshold for digital channel , where x is the digital + channel number (0-15). This will apply to all Search and Trigger Types that use the + channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:D?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:D?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:D value`` command. + + SCPI Syntax: + ``` + - BUS:THReshold:D {|ECL|TTL} + - BUS:THReshold:D? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + + +class BusThresholdChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``BUS:THReshold:CH`` command. + + Description: + - This command specifies the threshold for analog channel , where x is the channel number + (1-4). This setting applies to all trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:CH?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:CH value`` command. + + SCPI Syntax: + ``` + - BUS:THReshold:CH {ECL|TTL|} + - BUS:THReshold:CH? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a TTL preset high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + + +class BusThreshold(SCPICmdRead): + """The ``BUS:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``BUS:THReshold:CH`` command. + - ``.d``: The ``BUS:THReshold:D`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, BusThresholdChannel] = DefaultDictPassKeyToFactory( + lambda x: BusThresholdChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._d: Dict[int, BusThresholdDigitalBit] = DefaultDictPassKeyToFactory( + lambda x: BusThresholdDigitalBit(device, f"{self._cmd_syntax}:D{x}") + ) + + @property + def ch(self) -> Dict[int, BusThresholdChannel]: + """Return the ``BUS:THReshold:CH`` command. + + Description: + - This command specifies the threshold for analog channel , where x is the channel + number (1-4). This setting applies to all trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:THReshold:CH {ECL|TTL|} + - BUS:THReshold:CH? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a TTL preset high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + return self._ch + + @property + def d(self) -> Dict[int, BusThresholdDigitalBit]: + """Return the ``BUS:THReshold:D`` command. + + Description: + - This command specifies the threshold for digital channel , where x is the digital + channel number (0-15). This will apply to all Search and Trigger Types that use the + channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold:D?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold:D?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:THReshold:D value`` command. + + SCPI Syntax: + ``` + - BUS:THReshold:D {|ECL|TTL} + - BUS:THReshold:D? + ``` + + Info: + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + - ```` is a floating point number that specifies the threshold level, in volts. + """ + return self._d + + +class BusLowerthresholdRefItem(ValidatedDynamicNumberCmd, SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:REF`` command. + + Description: + - This command sets the lower threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:REF?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:REF {|ECL|TTL} + - BUS:LOWerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + + +class BusLowerthresholdMath1(SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:MATH1`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH1?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH1 {|ECL|TTL} + - BUS:LOWerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + + +class BusLowerthresholdMath(SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:MATH`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to all + search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH {|ECL|TTL} + - BUS:LOWerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the reference + waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + + +class BusLowerthresholdChannel(ValidatedChannel, SCPICmdWrite, SCPICmdRead): + """The ``BUS:LOWerthreshold:CH`` command. + + Description: + - This command sets the lower threshold for each channel. This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:CH?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:CH {|ECL|TTL} + - BUS:LOWerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + + +class BusLowerthreshold(SCPICmdRead): + """The ``BUS:LOWerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.ch``: The ``BUS:LOWerthreshold:CH`` command. + - ``.ref``: The ``BUS:LOWerthreshold:REF`` command. + - ``.math``: The ``BUS:LOWerthreshold:MATH`` command. + - ``.math1``: The ``BUS:LOWerthreshold:MATH1`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._ch: Dict[int, BusLowerthresholdChannel] = DefaultDictPassKeyToFactory( + lambda x: BusLowerthresholdChannel(device, f"{self._cmd_syntax}:CH{x}") + ) + self._ref: Dict[int, BusLowerthresholdRefItem] = DefaultDictPassKeyToFactory( + lambda x: BusLowerthresholdRefItem(device, f"{self._cmd_syntax}:REF{x}") + ) + self._math = BusLowerthresholdMath(device, f"{self._cmd_syntax}:MATH") + self._math1 = BusLowerthresholdMath1(device, f"{self._cmd_syntax}:MATH1") + + @property + def ch(self) -> Dict[int, BusLowerthresholdChannel]: + """Return the ``BUS:LOWerthreshold:CH`` command. + + Description: + - This command sets the lower threshold for each channel. This applies to all search and + trigger types that use the channel. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:CH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:CH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:CH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:CH {|ECL|TTL} + - BUS:LOWerthreshold:CH? + ``` + + Info: + - ```` is a floating point number that specifies the threshold, in volts. + - ``ECL`` specifies a preset ECL high level of -1.3V. + - ``TTL`` specifies a preset TTL high level of 1.4V. + """ + return self._ch + + @property + def ref(self) -> Dict[int, BusLowerthresholdRefItem]: + """Return the ``BUS:LOWerthreshold:REF`` command. + + Description: + - This command sets the lower threshold for each reference waveform. This applies to all + search and trigger types that use that reference waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:REF?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:REF?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:REF value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:REF {|ECL|TTL} + - BUS:LOWerthreshold:REF? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale for the specified reference waveform. + """ + return self._ref + + @property + def math(self) -> BusLowerthresholdMath: + """Return the ``BUS:LOWerthreshold:MATH`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH {|ECL|TTL} + - BUS:LOWerthreshold:MATH? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + return self._math + + @property + def math1(self) -> BusLowerthresholdMath1: + """Return the ``BUS:LOWerthreshold:MATH1`` command. + + Description: + - This command specifies the lower threshold for the math waveform. This will apply to + all search and trigger types that use the math waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold:MATH1?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold:MATH1?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:LOWerthreshold:MATH1 value`` + command. + + SCPI Syntax: + ``` + - BUS:LOWerthreshold:MATH1 {|ECL|TTL} + - BUS:LOWerthreshold:MATH1? + ``` + + Info: + - ```` is a floating point number that specifies the lower threshold for the + reference waveform, in volts. + - ``ECL`` - ECL (-1.3 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + - ``TTL`` - TTL (1.4 volts). Note that this setting is constrained, depending upon the + vertical scale of the specified math waveform. + """ + return self._math1 + + +class BusBItemUsbSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DPLUs`` command. + + Description: + - This command specifies the source for the USB D+ input. If you are using single-ended + probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DPLUs {CH|D} + - BUS:B:USB:SOUrce:DPLUs? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for D+ input. + - ``D`` specifies a digital channel as the source waveform for D+ input. (Requires option + 3-MSO.). + """ + + +class BusBItemUsbSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DMINus`` command. + + Description: + - This command specifies the source for the USB bus D- input. If you are using single-ended + probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DMINus {CH|D} + - BUS:B:USB:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for the D- input. + - ``D`` specifies a digital channel as the source waveform for the D- input. (Requires + option 3-MSO.). + """ + + +class BusBItemUsbSourceDifferential(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the source waveform for the USB bus when using a differential + probe. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DIFFerential?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DIFFerential?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:USB:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:USB:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies an analog waveform as the source. This channel should have an attached + differential probe. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + + +class BusBItemUsbSource(SCPICmdRead): + """The ``BUS:B:USB:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.differential``: The ``BUS:B:USB:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:USB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:USB:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._differential = BusBItemUsbSourceDifferential( + device, f"{self._cmd_syntax}:DIFFerential" + ) + self._dminus = BusBItemUsbSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemUsbSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def differential(self) -> BusBItemUsbSourceDifferential: + """Return the ``BUS:B:USB:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the source waveform for the USB bus when using a differential + probe. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DIFFerential?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:USB:SOUrce:DIFFerential?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:USB:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:USB:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies an analog waveform as the source. This channel should have an + attached differential probe. + - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies a reference waveform as the source. + """ + return self._differential + + @property + def dminus(self) -> BusBItemUsbSourceDminus: + """Return the ``BUS:B:USB:SOUrce:DMINus`` command. + + Description: + - This command specifies the source for the USB bus D- input. If you are using + single-ended probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DMINus {CH|D} + - BUS:B:USB:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for the D- input. + - ``D`` specifies a digital channel as the source waveform for the D- input. + (Requires option 3-MSO.). + """ + return self._dminus + + @property + def dplus(self) -> BusBItemUsbSourceDplus: + """Return the ``BUS:B:USB:SOUrce:DPLUs`` command. + + Description: + - This command specifies the source for the USB D+ input. If you are using single-ended + probes, you need to set the sources for both the D+ and D- inputs. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:SOUrce:DPLUs {CH|D} + - BUS:B:USB:SOUrce:DPLUs? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform for D+ input. + - ``D`` specifies a digital channel as the source waveform for D+ input. (Requires + option 3-MSO.). + """ + return self._dplus + + +class BusBItemUsbProbe(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:PRObe`` command. + + Description: + - This command specifies the type of probe connected to the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:PRObe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:PRObe {DIFFerential|SINGleended} + - BUS:B:USB:PRObe? + ``` + + Info: + - ``DIFFerential`` indicates the bus probe is a differential probe. + - ``SINGleended`` indicates the bus probe is not a differential probe. + """ + + +class BusBItemUsbBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:USB:BITRate`` command. + + Description: + - This command specifies the bit rate for the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:BITRate {LOW|FULL|HIGH} + - BUS:B:USB:BITRate? + ``` + + Info: + - ``LOW`` indicates the bit rate is 1.5 Mbps. + - ``FULL`` indicates the bit rate is 12 Mbps. + - ``HIGH`` indicates the bit rate is 480 Mbps. + """ + + +class BusBItemUsb(SCPICmdRead): + """The ``BUS:B:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:USB:BITRate`` command. + - ``.probe``: The ``BUS:B:USB:PRObe`` command. + - ``.source``: The ``BUS:B:USB:SOUrce`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemUsbBitrate(device, f"{self._cmd_syntax}:BITRate") + self._probe = BusBItemUsbProbe(device, f"{self._cmd_syntax}:PRObe") + self._source = BusBItemUsbSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemUsbBitrate: + """Return the ``BUS:B:USB:BITRate`` command. + + Description: + - This command specifies the bit rate for the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:USB:BITRate {LOW|FULL|HIGH} + - BUS:B:USB:BITRate? + ``` + + Info: + - ``LOW`` indicates the bit rate is 1.5 Mbps. + - ``FULL`` indicates the bit rate is 12 Mbps. + - ``HIGH`` indicates the bit rate is 480 Mbps. + """ + return self._bitrate + + @property + def probe(self) -> BusBItemUsbProbe: + """Return the ``BUS:B:USB:PRObe`` command. + + Description: + - This command specifies the type of probe connected to the USB bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:PRObe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:USB:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:USB:PRObe {DIFFerential|SINGleended} + - BUS:B:USB:PRObe? + ``` + + Info: + - ``DIFFerential`` indicates the bus probe is a differential probe. + - ``SINGleended`` indicates the bus probe is not a differential probe. + """ + return self._probe + + @property + def source(self) -> BusBItemUsbSource: + """Return the ``BUS:B:USB:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.differential``: The ``BUS:B:USB:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:USB:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:USB:SOUrce:DPLUs`` command. + """ + return self._source + + +class BusBItemType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:TYPe`` command. + + Description: + - This command specifies (or queries) the bus type. The supported bus types are dependent on + the oscilloscope model and the installed application models. With the exception of the + parallel bus, all bus types require installation of an application option. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:TYPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:TYPe {I2C|SPI|CAN|RS232C|PARallel|USB|LIN|FLEXRay|AUDio|ETHERnet|MIL1553B|ARINC429A} + - BUS:B:TYPe? + ``` + + Info: + - ``I2C`` specifies the Inter-IC bus. + - ``SPI`` specifies the Serial Peripheral Interface bus (not available on two-channel + models). + - ``CAN`` specifies the Controller Area Network bus. + - ``RS232C`` specifies the RS-232C bus. + - ``PARallel`` specifies the Parallel bus. + - ``USB`` specifies the USB bus. + - ``LIN`` specifies the LIN bus. + - ``FLEXRay`` specifies the FLexRay bus. + - ``AUDio`` specifies the audio bus. + - ``ETHERnet`` specifies the Ethernet bus. + - ``MIL1553B`` specifies the MIL-STD-1553 bus. + - ``ARINC429A`` specifies the Aeronautical Radio INC (specification 429) bus. + """ # noqa: E501 + + +class BusBItemState(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:STATE`` command. + + Description: + - This command specifies the on/off state of the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:STATE?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:STATE value`` command. + + SCPI Syntax: + ``` + - BUS:B:STATE {ON|OFF|} + - BUS:B:STATE? + ``` + + Info: + - ``ON`` or ≠ 0 turns on the bus. + - ``OFF`` or = 0 turns off the bus. + """ + + +class BusBItemSpiSsSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SS:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:SOUrce {CH|D} + - BUS:B:SPI:SS:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemSpiSsPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SS:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:POLarity {LOW|HIGH} + - BUS:B:SPI:SS:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiSs(SCPICmdRead): + """The ``BUS:B:SPI:SS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SS:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SS:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiSsPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiSsSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiSsPolarity: + """Return the ``BUS:B:SPI:SS:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:POLarity {LOW|HIGH} + - BUS:B:SPI:SS:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSsSource: + """Return the ``BUS:B:SPI:SS:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SS:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SS:SOUrce {CH|D} + - BUS:B:SPI:SS:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + return self._source + + +class BusBItemSpiSelectSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:SOUrce {CH|D} + - BUS:B:SPI:SELect:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemSpiSelectPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SELect:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SELect:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiSelect(SCPICmdRead): + """The ``BUS:B:SPI:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SELect:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SELect:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiSelectPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiSelectSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiSelectPolarity: + """Return the ``BUS:B:SPI:SELect:POLarity`` command. + + Description: + - This command specifies the polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:SELect:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:POLarity {LOW|HIGH} + - BUS:B:SPI:SELect:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSelectSource: + """Return the ``BUS:B:SPI:SELect:SOUrce`` command. + + Description: + - This command specifies the source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SELect:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SELect:SOUrce {CH|D} + - BUS:B:SPI:SELect:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + return self._source + + +class BusBItemSpiSclkSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:SOUrce {CH|D} + - BUS:B:SPI:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiSclkPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:SCLk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:POLarity {FALL|RISe} + - BUS:B:SPI:SCLk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + + +class BusBItemSpiSclk(SCPICmdRead): + """The ``BUS:B:SPI:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:SCLk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SCLk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiSclkPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiSclkSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiSclkPolarity: + """Return the ``BUS:B:SPI:SCLk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:POLarity {FALL|RISe} + - BUS:B:SPI:SCLk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiSclkSource: + """Return the ``BUS:B:SPI:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:SCLk:SOUrce {CH|D} + - BUS:B:SPI:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiIdletime(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:IDLETime`` command. + + Description: + - This command sets or queries the SPI idle time for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:IDLETime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:IDLETime?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:IDLETime value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` specifies the SPI idle time. + """ + + +class BusBItemSpiFraming(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:FRAMING`` command. + + Description: + - This command specifies the type of framing to use for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:FRAMING?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:FRAMING?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:FRAMING value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:FRAMING {SS|IDLEtime} + - BUS:B:SPI:FRAMING? + ``` + """ + + +class BusBItemSpiDataSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per word for the specified SPI bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:SIZe value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the data size for the specified bus. The minimum value is 2 and maximum is + 32. + """ + + +class BusBItemSpiDataOutSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:SOUrce {CH|D} + - BUS:B:SPI:DATa:OUT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiDataOutPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:OUT:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:OUT:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + + +class BusBItemSpiDataOut(SCPICmdRead): + """The ``BUS:B:SPI:DATa:OUT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:OUT:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataOutPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataOutSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataOutPolarity: + """Return the ``BUS:B:SPI:DATa:OUT:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:OUT:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:OUT:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataOutSource: + """Return the ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:OUT:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:OUT:SOUrce {CH|D} + - BUS:B:SPI:DATa:OUT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiDataMosiSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:SOUrce {CH|D} + - BUS:B:SPI:DATa:MOSI:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiDataMosiPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MOSI:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + + +class BusBItemSpiDataMosi(SCPICmdRead): + """The ``BUS:B:SPI:DATa:MOSI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataMosiPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataMosiSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataMosiPolarity: + """Return the ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + + Description: + - This command specifies the MOSI polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MOSI:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MOSI:POLarity? + ``` + + Info: + - ``LOW`` specifies the active low polarity. + - ``HIGH`` specifies the active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataMosiSource: + """Return the ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + + Description: + - This command specifies the MOSI source for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MOSI:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MOSI:SOUrce {CH|D} + - BUS:B:SPI:DATa:MOSI:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MOSI source waveform. + - ``D`` specifies a digital channel as the SPI MOSI source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiDataMisoSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:SOUrce {CH|D} + - BUS:B:SPI:DATa:MISO:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + + +class BusBItemSpiDataMisoPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:MISO:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MISO:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiDataMiso(SCPICmdRead): + """The ``BUS:B:SPI:DATa:MISO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MISO:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataMisoPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataMisoSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataMisoPolarity: + """Return the ``BUS:B:SPI:DATa:MISO:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MISO:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:MISO:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataMisoSource: + """Return the ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:MISO:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:MISO:SOUrce {CH|D} + - BUS:B:SPI:DATa:MISO:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + return self._source + + +class BusBItemSpiDataInSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:IN:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:SOUrce {CH|D} + - BUS:B:SPI:DATa:IN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + + +class BusBItemSpiDataInPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:DATa:IN:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:IN:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:IN:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + + +class BusBItemSpiDataIn(SCPICmdRead): + """The ``BUS:B:SPI:DATa:IN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:IN:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:IN:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiDataInPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiDataInSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiDataInPolarity: + """Return the ``BUS:B:SPI:DATa:IN:POLarity`` command. + + Description: + - This command specifies the MISO polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:SPI:DATa:IN:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:POLarity {LOW|HIGH} + - BUS:B:SPI:DATa:IN:POLarity? + ``` + + Info: + - ``LOW`` specifies an active low polarity. + - ``HIGH`` specifies an active high polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiDataInSource: + """Return the ``BUS:B:SPI:DATa:IN:SOUrce`` command. + + Description: + - This command specifies the MISO source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:IN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:IN:SOUrce {CH|D} + - BUS:B:SPI:DATa:IN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the MISO source waveform. + - ``D`` specifies a digital channel as the MISO source waveform. (Requires 3-MSO + option.). + """ + return self._source + + +class BusBItemSpiData(SCPICmdRead): + """The ``BUS:B:SPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.size``: The ``BUS:B:SPI:DATa:SIZe`` command. + - ``.in``: The ``BUS:B:SPI:DATa:IN`` command tree. + - ``.miso``: The ``BUS:B:SPI:DATa:MISO`` command tree. + - ``.out``: The ``BUS:B:SPI:DATa:OUT`` command tree. + - ``.mosi``: The ``BUS:B:SPI:DATa:MOSI`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemSpiDataSize(device, f"{self._cmd_syntax}:SIZe") + self._in = BusBItemSpiDataIn(device, f"{self._cmd_syntax}:IN") + self._miso = BusBItemSpiDataMiso(device, f"{self._cmd_syntax}:MISO") + self._out = BusBItemSpiDataOut(device, f"{self._cmd_syntax}:OUT") + self._mosi = BusBItemSpiDataMosi(device, f"{self._cmd_syntax}:MOSI") + + @property + def size(self) -> BusBItemSpiDataSize: + """Return the ``BUS:B:SPI:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per word for the specified SPI bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:DATa:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:DATa:SIZe + - BUS:B:SPI:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the data size for the specified bus. The minimum value is 2 and maximum + is 32. + """ + return self._size + + @property + def in_(self) -> BusBItemSpiDataIn: + """Return the ``BUS:B:SPI:DATa:IN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:IN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:IN?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:IN:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:IN:SOUrce`` command. + """ + return self._in + + @property + def miso(self) -> BusBItemSpiDataMiso: + """Return the ``BUS:B:SPI:DATa:MISO`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MISO?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MISO?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MISO:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MISO:SOUrce`` command. + """ + return self._miso + + @property + def out(self) -> BusBItemSpiDataOut: + """Return the ``BUS:B:SPI:DATa:OUT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:OUT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:OUT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:OUT:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:OUT:SOUrce`` command. + """ + return self._out + + @property + def mosi(self) -> BusBItemSpiDataMosi: + """Return the ``BUS:B:SPI:DATa:MOSI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa:MOSI?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:DATa:MOSI:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:DATa:MOSI:SOUrce`` command. + """ + return self._mosi + + +class BusBItemSpiClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:SOUrce {CH|D} + - BUS:B:SPI:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemSpiClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:CLOCk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:POLarity {FALL|RISe} + - BUS:B:SPI:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + + +class BusBItemSpiClock(SCPICmdRead): + """The ``BUS:B:SPI:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:SPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemSpiClockPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemSpiClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemSpiClockPolarity: + """Return the ``BUS:B:SPI:CLOCk:POLarity`` command. + + Description: + - This command specifies the SCLK polarity for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:POLarity {FALL|RISe} + - BUS:B:SPI:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` specifies the SCLK polarity as falling edge. + - ``RISe`` specifies the SCLK polarity as rising edge. + """ + return self._polarity + + @property + def source(self) -> BusBItemSpiClockSource: + """Return the ``BUS:B:SPI:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source waveform for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:CLOCk:SOUrce {CH|D} + - BUS:B:SPI:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemSpiBitorder(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SPI:BITOrder`` command. + + Description: + - This command sets or queries the SPI bit order for the specified bus. The bus is specified + by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:BITOrder value`` command. + + SCPI Syntax: + ``` + - BUS:B:SPI:BITOrder {LSB|MSB} + - BUS:B:SPI:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``LSB`` specifies that each bit becomes the recovered value's new LSB, after shifting + previously recovered bits one place to the left. The decoding happens right to left. + - ``MSB`` specifies that each successive bit from the bus's data line becomes the new MSB of + the recovered value, shifting any previously recovered bits one place to the right. The + decoding happens left to right. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemSpi(SCPICmdRead): + """The ``BUS:B:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.bitorder``: The ``BUS:B:SPI:BITOrder`` command. + - ``.data``: The ``BUS:B:SPI:DATa`` command tree. + - ``.framing``: The ``BUS:B:SPI:FRAMING`` command. + - ``.idletime``: The ``BUS:B:SPI:IDLETime`` command. + - ``.clock``: The ``BUS:B:SPI:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:SPI:SCLk`` command tree. + - ``.select``: The ``BUS:B:SPI:SELect`` command tree. + - ``.ss``: The ``BUS:B:SPI:SS`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitorder = BusBItemSpiBitorder(device, f"{self._cmd_syntax}:BITOrder") + self._data = BusBItemSpiData(device, f"{self._cmd_syntax}:DATa") + self._framing = BusBItemSpiFraming(device, f"{self._cmd_syntax}:FRAMING") + self._idletime = BusBItemSpiIdletime(device, f"{self._cmd_syntax}:IDLETime") + self._clock = BusBItemSpiClock(device, f"{self._cmd_syntax}:CLOCk") + self._sclk = BusBItemSpiSclk(device, f"{self._cmd_syntax}:SCLk") + self._select = BusBItemSpiSelect(device, f"{self._cmd_syntax}:SELect") + self._ss = BusBItemSpiSs(device, f"{self._cmd_syntax}:SS") + + @property + def bitorder(self) -> BusBItemSpiBitorder: + """Return the ``BUS:B:SPI:BITOrder`` command. + + Description: + - This command sets or queries the SPI bit order for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:BITOrder {LSB|MSB} + - BUS:B:SPI:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``LSB`` specifies that each bit becomes the recovered value's new LSB, after shifting + previously recovered bits one place to the left. The decoding happens right to left. + - ``MSB`` specifies that each successive bit from the bus's data line becomes the new + MSB of the recovered value, shifting any previously recovered bits one place to the + right. The decoding happens left to right. + """ + return self._bitorder + + @property + def data(self) -> BusBItemSpiData: + """Return the ``BUS:B:SPI:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.size``: The ``BUS:B:SPI:DATa:SIZe`` command. + - ``.in``: The ``BUS:B:SPI:DATa:IN`` command tree. + - ``.miso``: The ``BUS:B:SPI:DATa:MISO`` command tree. + - ``.out``: The ``BUS:B:SPI:DATa:OUT`` command tree. + - ``.mosi``: The ``BUS:B:SPI:DATa:MOSI`` command tree. + """ + return self._data + + @property + def framing(self) -> BusBItemSpiFraming: + """Return the ``BUS:B:SPI:FRAMING`` command. + + Description: + - This command specifies the type of framing to use for the SPI bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:FRAMING?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:FRAMING?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:FRAMING value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:FRAMING {SS|IDLEtime} + - BUS:B:SPI:FRAMING? + ``` + """ + return self._framing + + @property + def idletime(self) -> BusBItemSpiIdletime: + """Return the ``BUS:B:SPI:IDLETime`` command. + + Description: + - This command sets or queries the SPI idle time for the specified bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:IDLETime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:IDLETime?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SPI:IDLETime value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SPI:IDLETime + - BUS:B:SPI:IDLETime? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` specifies the SPI idle time. + """ + return self._idletime + + @property + def clock(self) -> BusBItemSpiClock: + """Return the ``BUS:B:SPI:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def sclk(self) -> BusBItemSpiSclk: + """Return the ``BUS:B:SPI:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SCLk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SCLk:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SCLk:SOUrce`` command. + """ + return self._sclk + + @property + def select(self) -> BusBItemSpiSelect: + """Return the ``BUS:B:SPI:SELect`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SELect?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SELect?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SELect:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SELect:SOUrce`` command. + """ + return self._select + + @property + def ss(self) -> BusBItemSpiSs: + """Return the ``BUS:B:SPI:SS`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI:SS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI:SS?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:SPI:SS:POLarity`` command. + - ``.source``: The ``BUS:B:SPI:SS:SOUrce`` command. + """ + return self._ss + + +class BusBItemSentTicktolerance(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:TICKTOLerance`` command. + + Description: + - This command sets or queries the SENT bus Tick Tolerance percent parameter for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:TICKTOLerance?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:TICKTOLerance?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:TICKTOLerance value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:TICKTOLerance + - BUS:B:SENT:TICKTOLerance? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the tick tolerance percentage. + """ + + +class BusBItemSentTicktime(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:TICKTIME`` command. + + Description: + - This command sets or queries the SENT bus Clock Tick parameter for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:TICKTIME?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:TICKTIME?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:TICKTIME value`` command. + + SCPI Syntax: + ``` + - BUS:B:SENT:TICKTIME + - BUS:B:SENT:TICKTIME? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SENT clock tick time, in seconds. + """ + + +class BusBItemSentSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:SOUrce`` command. + + Description: + - This command sets or queries the SENT DATA source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:SENT:SOUrce {CH|D|MATH|REF} + - BUS:B:SENT:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``CH`` specifies an analog channel as the source waveform for the SENT bus. + - ``D`` specifies a digital channel as the source waveform for the specified SENT bus. + - ``MATH`` specifies a math waveform as the source waveform for the SENT bus. + - ``REF`` specifies a reference waveform as the source waveform for the SENT bus. + """ + + +class BusBItemSentSlow(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:SLOW`` command. + + Description: + - This command sets or queries the SENT slow channel configuration for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:SLOW?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:SLOW?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:SLOW value`` command. + + SCPI Syntax: + ``` + - BUS:B:SENT:SLOW {NOne|ENHANCED4|ENHANCED8|SHOrt} + - BUS:B:SENT:SLOW? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``NOne`` specifies no slow channel configured. + - ``ENHANCED4`` specifies Enhanced 4 slow channel configuration. + - ``ENHANCED8`` specifies Enhanced 8 slow channel configuration. + - ``SHOrt`` specifies short slow channel configuration. + """ + + +class BusBItemSentPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:POLARITY`` command. + + Description: + - This command sets or queries SENT Idle State signal polarity for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:POLARITY?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:POLARITY?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:POLARITY value`` command. + + SCPI Syntax: + ``` + - BUS:B:SENT:POLARITY {INVerted|NORmal} + - BUS:B:SENT:POLARITY? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``INVerted`` specifies inverted polarity. + - ``NORmal`` specifies normal polarity. + """ + + +class BusBItemSentPausepulse(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:PAUSEPULSe`` command. + + Description: + - This command sets or queries SENT pause pulse for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:PAUSEPULSe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:PAUSEPULSe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:PAUSEPULSe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:PAUSEPULSe {NO|YES} + - BUS:B:SENT:PAUSEPULSe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``NO`` specifies no pause pulse. + - ``YES`` specifies a pause pulse is used. + """ + + +class BusBItemSentNumchannel(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:NUMCHANnel`` command. + + Description: + - This command sets or queries SENT fast data channels for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:NUMCHANnel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:NUMCHANnel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:NUMCHANnel value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:NUMCHANnel {ONE|TWO} + - BUS:B:SENT:NUMCHANnel? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``ONE`` specifies a SENT bus with one fast channel. + - ``TWO`` specifies a SENT bus with two fast channels. + """ + + +class BusBItemSentNibblecount(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:NIBBLECount`` command. + + Description: + - This command sets or queries SENT data nibbles for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:NIBBLECount?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:NIBBLECount?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:NIBBLECount value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:NIBBLECount {THREE|FOUR|SIX} + - BUS:B:SENT:NIBBLECount? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``THREE`` specifies regular data with 3 nibbles. + - ``FOUR`` specifies regular data with 4nibbles. + - ``SIX`` specifies regular data with 6nibbles. + """ + + +class BusBItemSentChanwidth(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:SENT:CHANWidth`` command. + + Description: + - This command sets or queries SENT fast channel bit widths for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:CHANWidth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:CHANWidth?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:CHANWidth value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:CHANWidth {TWELVEtwelve|FOURTEENten|SIXTEENeight} + - BUS:B:SENT:CHANWidth? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``TWELVEtwelve`` sets both Fast Channel 1 and Fast Channel 2 to12 bits wide. + - ``FOURTEENten`` sets Fast Channel 1 to 14 bits and Fast Channel 2 to 10 bits. + - ``SIXTEENeight`` sets Fast Channel 1 to 16 bits and Fast Channel 2 to eight bits. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemSent(SCPICmdRead): + """The ``BUS:B:SENT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Properties: + - ``.chanwidth``: The ``BUS:B:SENT:CHANWidth`` command. + - ``.nibblecount``: The ``BUS:B:SENT:NIBBLECount`` command. + - ``.numchannel``: The ``BUS:B:SENT:NUMCHANnel`` command. + - ``.pausepulse``: The ``BUS:B:SENT:PAUSEPULSe`` command. + - ``.polarity``: The ``BUS:B:SENT:POLARITY`` command. + - ``.slow``: The ``BUS:B:SENT:SLOW`` command. + - ``.source``: The ``BUS:B:SENT:SOUrce`` command. + - ``.ticktime``: The ``BUS:B:SENT:TICKTIME`` command. + - ``.ticktolerance``: The ``BUS:B:SENT:TICKTOLerance`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._chanwidth = BusBItemSentChanwidth(device, f"{self._cmd_syntax}:CHANWidth") + self._nibblecount = BusBItemSentNibblecount(device, f"{self._cmd_syntax}:NIBBLECount") + self._numchannel = BusBItemSentNumchannel(device, f"{self._cmd_syntax}:NUMCHANnel") + self._pausepulse = BusBItemSentPausepulse(device, f"{self._cmd_syntax}:PAUSEPULSe") + self._polarity = BusBItemSentPolarity(device, f"{self._cmd_syntax}:POLARITY") + self._slow = BusBItemSentSlow(device, f"{self._cmd_syntax}:SLOW") + self._source = BusBItemSentSource(device, f"{self._cmd_syntax}:SOUrce") + self._ticktime = BusBItemSentTicktime(device, f"{self._cmd_syntax}:TICKTIME") + self._ticktolerance = BusBItemSentTicktolerance(device, f"{self._cmd_syntax}:TICKTOLerance") + + @property + def chanwidth(self) -> BusBItemSentChanwidth: + """Return the ``BUS:B:SENT:CHANWidth`` command. + + Description: + - This command sets or queries SENT fast channel bit widths for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:CHANWidth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:CHANWidth?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:CHANWidth value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:CHANWidth {TWELVEtwelve|FOURTEENten|SIXTEENeight} + - BUS:B:SENT:CHANWidth? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``TWELVEtwelve`` sets both Fast Channel 1 and Fast Channel 2 to12 bits wide. + - ``FOURTEENten`` sets Fast Channel 1 to 14 bits and Fast Channel 2 to 10 bits. + - ``SIXTEENeight`` sets Fast Channel 1 to 16 bits and Fast Channel 2 to eight bits. + """ + return self._chanwidth + + @property + def nibblecount(self) -> BusBItemSentNibblecount: + """Return the ``BUS:B:SENT:NIBBLECount`` command. + + Description: + - This command sets or queries SENT data nibbles for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:NIBBLECount?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:NIBBLECount?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:NIBBLECount value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:NIBBLECount {THREE|FOUR|SIX} + - BUS:B:SENT:NIBBLECount? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``THREE`` specifies regular data with 3 nibbles. + - ``FOUR`` specifies regular data with 4nibbles. + - ``SIX`` specifies regular data with 6nibbles. + """ + return self._nibblecount + + @property + def numchannel(self) -> BusBItemSentNumchannel: + """Return the ``BUS:B:SENT:NUMCHANnel`` command. + + Description: + - This command sets or queries SENT fast data channels for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:NUMCHANnel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:NUMCHANnel?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:NUMCHANnel value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:NUMCHANnel {ONE|TWO} + - BUS:B:SENT:NUMCHANnel? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``ONE`` specifies a SENT bus with one fast channel. + - ``TWO`` specifies a SENT bus with two fast channels. + """ + return self._numchannel + + @property + def pausepulse(self) -> BusBItemSentPausepulse: + """Return the ``BUS:B:SENT:PAUSEPULSe`` command. + + Description: + - This command sets or queries SENT pause pulse for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:PAUSEPULSe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:PAUSEPULSe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:PAUSEPULSe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:PAUSEPULSe {NO|YES} + - BUS:B:SENT:PAUSEPULSe? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``NO`` specifies no pause pulse. + - ``YES`` specifies a pause pulse is used. + """ + return self._pausepulse + + @property + def polarity(self) -> BusBItemSentPolarity: + """Return the ``BUS:B:SENT:POLARITY`` command. + + Description: + - This command sets or queries SENT Idle State signal polarity for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:POLARITY?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:POLARITY?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:POLARITY value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:POLARITY {INVerted|NORmal} + - BUS:B:SENT:POLARITY? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``INVerted`` specifies inverted polarity. + - ``NORmal`` specifies normal polarity. + """ + return self._polarity + + @property + def slow(self) -> BusBItemSentSlow: + """Return the ``BUS:B:SENT:SLOW`` command. + + Description: + - This command sets or queries the SENT slow channel configuration for the specified + bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:SLOW?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:SLOW?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:SLOW value`` command. + + SCPI Syntax: + ``` + - BUS:B:SENT:SLOW {NOne|ENHANCED4|ENHANCED8|SHOrt} + - BUS:B:SENT:SLOW? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``NOne`` specifies no slow channel configured. + - ``ENHANCED4`` specifies Enhanced 4 slow channel configuration. + - ``ENHANCED8`` specifies Enhanced 8 slow channel configuration. + - ``SHOrt`` specifies short slow channel configuration. + """ + return self._slow + + @property + def source(self) -> BusBItemSentSource: + """Return the ``BUS:B:SENT:SOUrce`` command. + + Description: + - This command sets or queries the SENT DATA source for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:SOUrce {CH|D|MATH|REF} + - BUS:B:SENT:SOUrce? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ``CH`` specifies an analog channel as the source waveform for the SENT bus. + - ``D`` specifies a digital channel as the source waveform for the specified SENT + bus. + - ``MATH`` specifies a math waveform as the source waveform for the SENT bus. + - ``REF`` specifies a reference waveform as the source waveform for the SENT bus. + """ + return self._source + + @property + def ticktime(self) -> BusBItemSentTicktime: + """Return the ``BUS:B:SENT:TICKTIME`` command. + + Description: + - This command sets or queries the SENT bus Clock Tick parameter for the specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:TICKTIME?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:TICKTIME?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:TICKTIME value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:TICKTIME + - BUS:B:SENT:TICKTIME? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the SENT clock tick time, in seconds. + """ + return self._ticktime + + @property + def ticktolerance(self) -> BusBItemSentTicktolerance: + """Return the ``BUS:B:SENT:TICKTOLerance`` command. + + Description: + - This command sets or queries the SENT bus Tick Tolerance percent parameter for the + specified bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT:TICKTOLerance?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT:TICKTOLerance?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:SENT:TICKTOLerance value`` + command. + + SCPI Syntax: + ``` + - BUS:B:SENT:TICKTOLerance + - BUS:B:SENT:TICKTOLerance? + ``` + + Info: + - ``B`` is the number of the bus waveform. + - ```` is the tick tolerance percentage. + """ + return self._ticktolerance + + +class BusBItemRs232cTxSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:TX:SOUrce`` command. + + Description: + - This command specifies the TX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:TX:SOUrce {CH|D|Off} + - BUS:B:RS232C:TX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the TX source waveform. + - ``D`` specifies a digital channel as the TX source waveform. (Requires option 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + + +class BusBItemRs232cTx(SCPICmdRead): + """The ``BUS:B:RS232C:TX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:RS232C:TX:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemRs232cTxSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemRs232cTxSource: + """Return the ``BUS:B:RS232C:TX:SOUrce`` command. + + Description: + - This command specifies the TX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:TX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:TX:SOUrce {CH|D|Off} + - BUS:B:RS232C:TX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the TX source waveform. + - ``D`` specifies a digital channel as the TX source waveform. (Requires option + 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + return self._source + + +class BusBItemRs232cRxSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:RX:SOUrce`` command. + + Description: + - This command specifies the RX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:RX:SOUrce {CH|D|Off} + - BUS:B:RS232C:RX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the RX source waveform. + - ``D`` specifies a digital channel as the RX source waveform. (Requires option 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + + +class BusBItemRs232cRx(SCPICmdRead): + """The ``BUS:B:RS232C:RX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:RS232C:RX:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemRs232cRxSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemRs232cRxSource: + """Return the ``BUS:B:RS232C:RX:SOUrce`` command. + + Description: + - This command specifies the RX source waveform for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:RX:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:RX:SOUrce {CH|D|Off} + - BUS:B:RS232C:RX:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the RX source waveform. + - ``D`` specifies a digital channel as the RX source waveform. (Requires option + 3-MSO.). + - ``Off`` sets the specified bus input to off. + """ + return self._source + + +class BusBItemRs232cPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:POLarity`` command. + + Description: + - This command specifies the polarity for the RS-232C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:POLarity {NORMal|INVERTed} + - BUS:B:RS232C:POLarity? + ``` + + Info: + - ``NORMal`` sets the polarity to positive. + - ``INVERTed`` sets the polarity to negative. + """ + + +class BusBItemRs232cParity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:PARity`` command. + + Description: + - This command sets or queries the RS-232C parity for bus , where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:PARity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:PARity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:PARity value`` command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:PARity {NONe|EVEN|ODD} + - BUS:B:RS232C:PARity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NONe`` specifies no parity. + - ``EVEN`` specifies even parity. + - ``ODD`` specifies odd parity. + """ + + +class BusBItemRs232cDisplaymode(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DISplaymode`` command. + + Description: + - This command specifies the display mode for the RS-232 bus (frame or packet). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DISplaymode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DISplaymode?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DISplaymode value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DISplaymode {FRAme|PACKET} + - BUS:B:RS232C:DISplaymode? + ``` + + Info: + - ``FRAme`` displays each frame as a single entity. + - ``PACKET`` displays a group of frames terminated with a single frame defined by the + ``BUS:B:RS232C:DELImiter`` command or the front panel. + """ + + +class BusBItemRs232cDelimiter(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DELIMiter`` command. + + Description: + - This command specifies the delimiting value for a packet on the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DELIMiter?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DELIMiter?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DELIMiter value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DELIMiter {NULl|LF|CR|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + ``` + + Info: + - ``NULl`` specifies 0x00. + - ``LF`` specifies 0x0A. + - ``CR`` specifies 0x0D. + - ``XFF`` specifies 0xFF. + """ + + +class BusBItemRs232cDatabits(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:DATABits`` command. + + Description: + - This command sets or queries the RS-232C data width for bus, where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DATABits?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DATABits?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DATABits value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + ``` + + Info: + - ``B`` is the number of the bus. + - ``7`` specifies the number of bits as 7 in the RS-232C data frame. + - ``8`` specifies the number of bits as 8 in the RS-232C data frame. + - ``9`` specifies the number of bits as 9 in the RS-232C data frame. + """ + + +class BusBItemRs232cBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:RS232C:BITRate`` command. + + Description: + - This command specifies the bit rate for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:BITRate + - BUS:B:RS232C:BITRate? + ``` + + Info: + - ```` is the bit rate in bits-per-second. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemRs232c(SCPICmdRead): + """The ``BUS:B:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:RS232C:BITRate`` command. + - ``.databits``: The ``BUS:B:RS232C:DATABits`` command. + - ``.delimiter``: The ``BUS:B:RS232C:DELIMiter`` command. + - ``.displaymode``: The ``BUS:B:RS232C:DISplaymode`` command. + - ``.parity``: The ``BUS:B:RS232C:PARity`` command. + - ``.polarity``: The ``BUS:B:RS232C:POLarity`` command. + - ``.rx``: The ``BUS:B:RS232C:RX`` command tree. + - ``.tx``: The ``BUS:B:RS232C:TX`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemRs232cBitrate(device, f"{self._cmd_syntax}:BITRate") + self._databits = BusBItemRs232cDatabits(device, f"{self._cmd_syntax}:DATABits") + self._delimiter = BusBItemRs232cDelimiter(device, f"{self._cmd_syntax}:DELIMiter") + self._displaymode = BusBItemRs232cDisplaymode(device, f"{self._cmd_syntax}:DISplaymode") + self._parity = BusBItemRs232cParity(device, f"{self._cmd_syntax}:PARity") + self._polarity = BusBItemRs232cPolarity(device, f"{self._cmd_syntax}:POLarity") + self._rx = BusBItemRs232cRx(device, f"{self._cmd_syntax}:RX") + self._tx = BusBItemRs232cTx(device, f"{self._cmd_syntax}:TX") + + @property + def bitrate(self) -> BusBItemRs232cBitrate: + """Return the ``BUS:B:RS232C:BITRate`` command. + + Description: + - This command specifies the bit rate for the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:BITRate + - BUS:B:RS232C:BITRate? + ``` + + Info: + - ```` is the bit rate in bits-per-second. You can enter any positive integer, and + the instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def databits(self) -> BusBItemRs232cDatabits: + """Return the ``BUS:B:RS232C:DATABits`` command. + + Description: + - This command sets or queries the RS-232C data width for bus, where the bus number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DATABits?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DATABits?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DATABits value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DATABits {7|8|9} + - BUS:B:RS232C:DATABits? + ``` + + Info: + - ``B`` is the number of the bus. + - ``7`` specifies the number of bits as 7 in the RS-232C data frame. + - ``8`` specifies the number of bits as 8 in the RS-232C data frame. + - ``9`` specifies the number of bits as 9 in the RS-232C data frame. + """ + return self._databits + + @property + def delimiter(self) -> BusBItemRs232cDelimiter: + """Return the ``BUS:B:RS232C:DELIMiter`` command. + + Description: + - This command specifies the delimiting value for a packet on the RS-232 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DELIMiter?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DELIMiter?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DELIMiter value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DELIMiter {NULl|LF|CR|SPace|XFF} + - BUS:B:RS232C:DELIMiter? + ``` + + Info: + - ``NULl`` specifies 0x00. + - ``LF`` specifies 0x0A. + - ``CR`` specifies 0x0D. + - ``XFF`` specifies 0xFF. + """ + return self._delimiter + + @property + def displaymode(self) -> BusBItemRs232cDisplaymode: + """Return the ``BUS:B:RS232C:DISplaymode`` command. + + Description: + - This command specifies the display mode for the RS-232 bus (frame or packet). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:DISplaymode?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:DISplaymode?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:DISplaymode value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:DISplaymode {FRAme|PACKET} + - BUS:B:RS232C:DISplaymode? + ``` + + Info: + - ``FRAme`` displays each frame as a single entity. + - ``PACKET`` displays a group of frames terminated with a single frame defined by the + ``BUS:B:RS232C:DELImiter`` command or the front panel. + """ + return self._displaymode + + @property + def parity(self) -> BusBItemRs232cParity: + """Return the ``BUS:B:RS232C:PARity`` command. + + Description: + - This command sets or queries the RS-232C parity for bus , where the bus number is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:PARity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:PARity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:PARity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:PARity {NONe|EVEN|ODD} + - BUS:B:RS232C:PARity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NONe`` specifies no parity. + - ``EVEN`` specifies even parity. + - ``ODD`` specifies odd parity. + """ + return self._parity + + @property + def polarity(self) -> BusBItemRs232cPolarity: + """Return the ``BUS:B:RS232C:POLarity`` command. + + Description: + - This command specifies the polarity for the RS-232C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:RS232C:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:RS232C:POLarity {NORMal|INVERTed} + - BUS:B:RS232C:POLarity? + ``` + + Info: + - ``NORMal`` sets the polarity to positive. + - ``INVERTed`` sets the polarity to negative. + """ + return self._polarity + + @property + def rx(self) -> BusBItemRs232cRx: + """Return the ``BUS:B:RS232C:RX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:RX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:RX?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:RS232C:RX:SOUrce`` command. + """ + return self._rx + + @property + def tx(self) -> BusBItemRs232cTx: + """Return the ``BUS:B:RS232C:TX`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C:TX?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C:TX?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:RS232C:TX:SOUrce`` command. + """ + return self._tx + + +class BusBItemPosition(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:POSition`` command. + + Description: + - This command specifies the position of the bus waveform on the display. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:POSition?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:POSition value`` command. + + SCPI Syntax: + ``` + - BUS:B:POSition + - BUS:B:POSition? + ``` + + Info: + - ```` is a floating point number that specifies the position of the bus waveform + on the display. + """ + + +class BusBItemParallelWidth(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:WIDth`` command. + + Description: + - This command specifies the number of bits to use for the width of the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:WIDth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:WIDth?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:WIDth value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:WIDth + - BUS:B:PARallel:WIDth? + ``` + + Info: + - ```` is the number of bits. + """ + + +class BusBItemParallelClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:SOUrce {CH|D} + - BUS:B:PARallel:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel to use the clock source waveform. + - ``D`` specifies a digital channels the clock source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemParallelClockIsclocked(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + + Description: + - Specifies the state of the clock function for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:ISCLOCKed value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:ISCLOCKed {YES|NO} + - BUS:B:PARallel:CLOCk:ISCLOCKed? + ``` + + Info: + - ``YES`` specifes that the parallel bus is clocked. + - ``NO`` specifes that the parallel bus is not clocked. + """ + + +class BusBItemParallelClockEdge(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk:EDGE`` command. + + Description: + - Specifies the clock edge for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:CLOCk:EDGE value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:EDGE {EITher|RISing|FALling} + - BUS:B:PARallel:CLOCk:EDGE? + ``` + + Info: + - ``EIther`` specifies either edge as the clock edge. + - ``RISing`` specifies the rising edge as the clock edge. + - ``FALling`` specifies the falling edge as the clock edge. + """ + + +class BusBItemParallelClock(SCPICmdRead): + """The ``BUS:B:PARallel:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.edge``: The ``BUS:B:PARallel:CLOCk:EDGE`` command. + - ``.isclocked``: The ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + - ``.source``: The ``BUS:B:PARallel:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._edge = BusBItemParallelClockEdge(device, f"{self._cmd_syntax}:EDGE") + self._isclocked = BusBItemParallelClockIsclocked(device, f"{self._cmd_syntax}:ISCLOCKed") + self._source = BusBItemParallelClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def edge(self) -> BusBItemParallelClockEdge: + """Return the ``BUS:B:PARallel:CLOCk:EDGE`` command. + + Description: + - Specifies the clock edge for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:EDGE?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:EDGE value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:EDGE {EITher|RISing|FALling} + - BUS:B:PARallel:CLOCk:EDGE? + ``` + + Info: + - ``EIther`` specifies either edge as the clock edge. + - ``RISing`` specifies the rising edge as the clock edge. + - ``FALling`` specifies the falling edge as the clock edge. + """ + return self._edge + + @property + def isclocked(self) -> BusBItemParallelClockIsclocked: + """Return the ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + + Description: + - Specifies the state of the clock function for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:PARallel:CLOCk:ISCLOCKed?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:ISCLOCKed value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:ISCLOCKed {YES|NO} + - BUS:B:PARallel:CLOCk:ISCLOCKed? + ``` + + Info: + - ``YES`` specifes that the parallel bus is clocked. + - ``NO`` specifes that the parallel bus is not clocked. + """ + return self._isclocked + + @property + def source(self) -> BusBItemParallelClockSource: + """Return the ``BUS:B:PARallel:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:CLOCk:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:CLOCk:SOUrce {CH|D} + - BUS:B:PARallel:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel to use the clock source waveform. + - ``D`` specifies a digital channels the clock source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemParallelBitItemSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:PARallel:BIT:SOUrce`` command. + + Description: + - Specifies the bit source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:BIT:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BIT:SOUrce {CH|D} + - BUS:B:PARallel:BIT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the bit source waveform. + - ``D`` specifies a digital channel as the bit source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemParallelBitItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``BUS:B:PARallel:BIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:PARallel:BIT:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemParallelBitItemSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemParallelBitItemSource: + """Return the ``BUS:B:PARallel:BIT:SOUrce`` command. + + Description: + - Specifies the bit source waveform for the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:PARallel:BIT:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:BIT:SOUrce {CH|D} + - BUS:B:PARallel:BIT:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the bit source waveform. + - ``D`` specifies a digital channel as the bit source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemParallel(SCPICmdRead): + """The ``BUS:B:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bit``: The ``BUS:B:PARallel:BIT`` command tree. + - ``.clock``: The ``BUS:B:PARallel:CLOCk`` command tree. + - ``.width``: The ``BUS:B:PARallel:WIDth`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bit: Dict[int, BusBItemParallelBitItem] = DefaultDictPassKeyToFactory( + lambda x: BusBItemParallelBitItem(device, f"{self._cmd_syntax}:BIT{x}") + ) + self._clock = BusBItemParallelClock(device, f"{self._cmd_syntax}:CLOCk") + self._width = BusBItemParallelWidth(device, f"{self._cmd_syntax}:WIDth") + + @property + def bit(self) -> Dict[int, BusBItemParallelBitItem]: + """Return the ``BUS:B:PARallel:BIT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:BIT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:BIT?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:PARallel:BIT:SOUrce`` command. + """ + return self._bit + + @property + def clock(self) -> BusBItemParallelClock: + """Return the ``BUS:B:PARallel:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:CLOCk?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.edge``: The ``BUS:B:PARallel:CLOCk:EDGE`` command. + - ``.isclocked``: The ``BUS:B:PARallel:CLOCk:ISCLOCKed`` command. + - ``.source``: The ``BUS:B:PARallel:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def width(self) -> BusBItemParallelWidth: + """Return the ``BUS:B:PARallel:WIDth`` command. + + Description: + - This command specifies the number of bits to use for the width of the parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel:WIDth?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel:WIDth?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:PARallel:WIDth value`` + command. + + SCPI Syntax: + ``` + - BUS:B:PARallel:WIDth + - BUS:B:PARallel:WIDth? + ``` + + Info: + - ```` is the number of bits. + """ + return self._width + + +class BusBItemMil1553bSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:SOUrce`` command. + + Description: + - This command specifies the source for differential input for the MIL-STD-1553 bus. The + supported source waveforms are channels 1-4, math waveform, and reference waveforms 1-4. + The default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:SOUrce {CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for differential input. + - ``MATH`` specifies the math waveform as the MIL-STD-1553 bus source for differential + input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + + +class BusBItemMil1553bResponsetimeMinimum(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + + Description: + - This command sets or queries the minimum response time to a valid command issued for the + specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MINimum + - BUS:B:MIL1553B:RESPonsetime:MINimum? + ``` + + Info: + - ``B`` is the Bus number. + - ```` is a floating point number that specifies the minimum response time, in seconds. + """ + + +class BusBItemMil1553bResponsetimeMaximum(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + + Description: + - This command sets or queries the maximum response time to a valid command issued for the + specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MAXimum + - BUS:B:MIL1553B:RESPonsetime:MAXimum? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a floating point number that specifies the maximum response time, in seconds. + """ + + +class BusBItemMil1553bResponsetime(SCPICmdRead): + """The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.maximum``: The ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + - ``.minimum``: The ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._maximum = BusBItemMil1553bResponsetimeMaximum(device, f"{self._cmd_syntax}:MAXimum") + self._minimum = BusBItemMil1553bResponsetimeMinimum(device, f"{self._cmd_syntax}:MINimum") + + @property + def maximum(self) -> BusBItemMil1553bResponsetimeMaximum: + """Return the ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + + Description: + - This command sets or queries the maximum response time to a valid command issued for + the specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MAXimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MAXimum + - BUS:B:MIL1553B:RESPonsetime:MAXimum? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a floating point number that specifies the maximum response time, in + seconds. + """ + return self._maximum + + @property + def minimum(self) -> BusBItemMil1553bResponsetimeMinimum: + """Return the ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + + Description: + - This command sets or queries the minimum response time to a valid command issued for + the specified MIL-STD-1553 bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:MIL1553B:RESPonsetime:MINimum value`` command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:RESPonsetime:MINimum + - BUS:B:MIL1553B:RESPonsetime:MINimum? + ``` + + Info: + - ``B`` is the Bus number. + - ```` is a floating point number that specifies the minimum response time, in + seconds. + """ + return self._minimum + + +class BusBItemMil1553bPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:MIL1553B:POLarity`` command. + + Description: + - This command sets or queries the source polarity for the specified MIL-STD-1553 bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:POLarity {NORMal|INVERTed} + - BUS:B:MIL1553B:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies normal polarity. + - ``INVERTed`` specifies inverted polarity. + """ + + +class BusBItemMil1553b(SCPICmdRead): + """The ``BUS:B:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.polarity``: The ``BUS:B:MIL1553B:POLarity`` command. + - ``.responsetime``: The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + - ``.source``: The ``BUS:B:MIL1553B:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemMil1553bPolarity(device, f"{self._cmd_syntax}:POLarity") + self._responsetime = BusBItemMil1553bResponsetime( + device, f"{self._cmd_syntax}:RESPonsetime" + ) + self._source = BusBItemMil1553bSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemMil1553bPolarity: + """Return the ``BUS:B:MIL1553B:POLarity`` command. + + Description: + - This command sets or queries the source polarity for the specified MIL-STD-1553 bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:POLarity {NORMal|INVERTed} + - BUS:B:MIL1553B:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies normal polarity. + - ``INVERTed`` specifies inverted polarity. + """ + return self._polarity + + @property + def responsetime(self) -> BusBItemMil1553bResponsetime: + """Return the ``BUS:B:MIL1553B:RESPonsetime`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:RESPonsetime?`` + query and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.maximum``: The ``BUS:B:MIL1553B:RESPonsetime:MAXimum`` command. + - ``.minimum``: The ``BUS:B:MIL1553B:RESPonsetime:MINimum`` command. + """ + return self._responsetime + + @property + def source(self) -> BusBItemMil1553bSource: + """Return the ``BUS:B:MIL1553B:SOUrce`` command. + + Description: + - This command specifies the source for differential input for the MIL-STD-1553 bus. The + supported source waveforms are channels 1-4, math waveform, and reference waveforms + 1-4. The default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:MIL1553B:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:MIL1553B:SOUrce {CH|MATH|REF} + - BUS:B:MIL1553B:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for differential input. + - ``MATH`` specifies the math waveform as the MIL-STD-1553 bus source for differential + input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + return self._source + + +class BusBItemLinStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:STANDard`` command. + + Description: + - Specifies the LIN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:STANDard value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:STANDard {V1X|V2X|MIXed} + - BUS:B:LIN:STANDard? + ``` + + Info: + - ``V1X`` sets the LIN bus standard to V1X. + - ``V2X`` sets the LIN bus standard to V2X. + - ``MIXed`` sets the LIN bus standard to MIXED. + """ + + +class BusBItemLinSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:SOUrce`` command. + + Description: + - Specifies the source waveform for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SOUrce {CH|D} + - BUS:B:LIN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + + +class BusBItemLinSamplepoint(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:SAMPLEpoint`` command. + + Description: + - Specifies the LIN sample point, for the specified LIN bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a percentage that represents the point at which to sample during each bit + period. + """ + + +class BusBItemLinPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:POLarity`` command. + + Description: + - Specifies the LIN bus polarity. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:POLarity {NORMal|INVerted} + - BUS:B:LIN:POLarity? + ``` + + Info: + - ``NORMal`` specifies normal polarity. + - ``INVerted`` specifies inverted polarity. + """ + + +class BusBItemLinMaxbytedelim(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:MAXBytedelim`` command. + + Description: + - Specifies the maximum byte delimiter for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:MAXBytedelim value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:MAXBytedelim + - BUS:B:LIN:MAXBytedelim? + ``` + + Info: + - ```` is the maximum byte delimiter for the LIN bus. + """ + + +class BusBItemLinIdformat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:IDFORmat`` command. + + Description: + - This command sets or queries LIN bus identifier format for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:IDFORmat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:IDFORmat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:IDFORmat value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NOPARity`` specifies an id format that includes parity. + - ``PARity`` specifies an id format that separates parity. + """ + + +class BusBItemLinBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LIN:BITRate`` command. + + Description: + - Specifies the bit rate for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:LIN:BITRate + - BUS:B:LIN:BITRate? + ``` + + Info: + - ```` is the LIN bus bit rate. You can enter any positive integer, and the instrument + will coerce the value to the closest supported bit rate. + """ + + +class BusBItemLin(SCPICmdRead): + """The ``BUS:B:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:LIN:BITRate`` command. + - ``.idformat``: The ``BUS:B:LIN:IDFORmat`` command. + - ``.maxbytedelim``: The ``BUS:B:LIN:MAXBytedelim`` command. + - ``.polarity``: The ``BUS:B:LIN:POLarity`` command. + - ``.samplepoint``: The ``BUS:B:LIN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:LIN:SOUrce`` command. + - ``.standard``: The ``BUS:B:LIN:STANDard`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemLinBitrate(device, f"{self._cmd_syntax}:BITRate") + self._idformat = BusBItemLinIdformat(device, f"{self._cmd_syntax}:IDFORmat") + self._maxbytedelim = BusBItemLinMaxbytedelim(device, f"{self._cmd_syntax}:MAXBytedelim") + self._polarity = BusBItemLinPolarity(device, f"{self._cmd_syntax}:POLarity") + self._samplepoint = BusBItemLinSamplepoint(device, f"{self._cmd_syntax}:SAMPLEpoint") + self._source = BusBItemLinSource(device, f"{self._cmd_syntax}:SOUrce") + self._standard = BusBItemLinStandard(device, f"{self._cmd_syntax}:STANDard") + + @property + def bitrate(self) -> BusBItemLinBitrate: + """Return the ``BUS:B:LIN:BITRate`` command. + + Description: + - Specifies the bit rate for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:BITRate + - BUS:B:LIN:BITRate? + ``` + + Info: + - ```` is the LIN bus bit rate. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def idformat(self) -> BusBItemLinIdformat: + """Return the ``BUS:B:LIN:IDFORmat`` command. + + Description: + - This command sets or queries LIN bus identifier format for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:IDFORmat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:IDFORmat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:IDFORmat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:IDFORmat {NOPARity|PARity} + - BUS:B:LIN:IDFORmat? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NOPARity`` specifies an id format that includes parity. + - ``PARity`` specifies an id format that separates parity. + """ + return self._idformat + + @property + def maxbytedelim(self) -> BusBItemLinMaxbytedelim: + """Return the ``BUS:B:LIN:MAXBytedelim`` command. + + Description: + - Specifies the maximum byte delimiter for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:MAXBytedelim?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:MAXBytedelim value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:MAXBytedelim + - BUS:B:LIN:MAXBytedelim? + ``` + + Info: + - ```` is the maximum byte delimiter for the LIN bus. + """ + return self._maxbytedelim + + @property + def polarity(self) -> BusBItemLinPolarity: + """Return the ``BUS:B:LIN:POLarity`` command. + + Description: + - Specifies the LIN bus polarity. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:POLarity?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:POLarity {NORMal|INVerted} + - BUS:B:LIN:POLarity? + ``` + + Info: + - ``NORMal`` specifies normal polarity. + - ``INVerted`` specifies inverted polarity. + """ + return self._polarity + + @property + def samplepoint(self) -> BusBItemLinSamplepoint: + """Return the ``BUS:B:LIN:SAMPLEpoint`` command. + + Description: + - Specifies the LIN sample point, for the specified LIN bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SAMPLEpoint + - BUS:B:LIN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is a percentage that represents the point at which to sample during each bit + period. + """ + return self._samplepoint + + @property + def source(self) -> BusBItemLinSource: + """Return the ``BUS:B:LIN:SOUrce`` command. + + Description: + - Specifies the source waveform for the LIN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:SOUrce {CH|D} + - BUS:B:LIN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + - ``D`` specifies a digital channel as the source waveform. (Requires option 3-MSO.). + """ + return self._source + + @property + def standard(self) -> BusBItemLinStandard: + """Return the ``BUS:B:LIN:STANDard`` command. + + Description: + - Specifies the LIN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LIN:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:LIN:STANDard {V1X|V2X|MIXed} + - BUS:B:LIN:STANDard? + ``` + + Info: + - ``V1X`` sets the LIN bus standard to V1X. + - ``V2X`` sets the LIN bus standard to V2X. + - ``MIXed`` sets the LIN bus standard to MIXED. + """ + return self._standard + + +class BusBItemLabel(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:LABel`` command. + + Description: + - Specifies the waveform label for the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel + - BUS:B:LABel? + ``` + + Info: + - ```` is an alphanumeric string of text, enclosed in quotes, that contains the + text label information for bus . The text string is limited to 30 characters. + """ + + +class BusBItemI2cSdataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:SDAta:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SDAta:SOUrce {CH|D} + - BUS:B:I2C:SDAta:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cSdata(SCPICmdRead): + """The ``BUS:B:I2C:SDAta`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:SDAta:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cSdataSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cSdataSource: + """Return the ``BUS:B:I2C:SDAta:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SDAta:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SDAta:SOUrce {CH|D} + - BUS:B:I2C:SDAta:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemI2cSclkSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SCLk:SOUrce {CH|D} + - BUS:B:I2C:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cSclk(SCPICmdRead): + """The ``BUS:B:I2C:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:SCLk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cSclkSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cSclkSource: + """Return the ``BUS:B:I2C:SCLk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:SCLk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:SCLk:SOUrce {CH|D} + - BUS:B:I2C:SCLk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemI2cDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:DATa:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:DATa:SOUrce {CH|D} + - BUS:B:I2C:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cData(SCPICmdRead): + """The ``BUS:B:I2C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:DATa:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cDataSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cDataSource: + """Return the ``BUS:B:I2C:DATa:SOUrce`` command. + + Description: + - Specifies the SDATA source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:DATa:SOUrce {CH|D} + - BUS:B:I2C:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the I2C SDATA source waveform. + - ``D`` specifies a digital channel as the I2C SDATA source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemI2cClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:CLOCk:SOUrce {CH|D} + - BUS:B:I2C:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemI2cClock(SCPICmdRead): + """The ``BUS:B:I2C:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.source``: The ``BUS:B:I2C:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._source = BusBItemI2cClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def source(self) -> BusBItemI2cClockSource: + """Return the ``BUS:B:I2C:CLOCk:SOUrce`` command. + + Description: + - This command specifies the SCLK source for the I2C bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:CLOCk:SOUrce {CH|D} + - BUS:B:I2C:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the SCLK source waveform. + - ``D`` specifies a digital channel as the SCLK source waveform. (Requires option + 3-MSO.). + """ + return self._source + + +class BusBItemI2cAddressRwinclude(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:I2C:ADDRess:RWINClude`` command. + + Description: + - Sets and returns whether the read/write bit is included in the address. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:I2C:ADDRess:RWINClude value`` + command. + + SCPI Syntax: + ``` + - BUS:B:I2C:ADDRess:RWINClude {ON|OFF|} + - BUS:B:I2C:ADDRess:RWINClude? + ``` + + Info: + - ```` = 0 does not include the read/write bit in the address; any other value includes + the read/write bit in the address. + """ + + +class BusBItemI2cAddress(SCPICmdRead): + """The ``BUS:B:I2C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.rwinclude``: The ``BUS:B:I2C:ADDRess:RWINClude`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rwinclude = BusBItemI2cAddressRwinclude(device, f"{self._cmd_syntax}:RWINClude") + + @property + def rwinclude(self) -> BusBItemI2cAddressRwinclude: + """Return the ``BUS:B:I2C:ADDRess:RWINClude`` command. + + Description: + - Sets and returns whether the read/write bit is included in the address. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess:RWINClude?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:I2C:ADDRess:RWINClude value`` command. + + SCPI Syntax: + ``` + - BUS:B:I2C:ADDRess:RWINClude {ON|OFF|} + - BUS:B:I2C:ADDRess:RWINClude? + ``` + + Info: + - ```` = 0 does not include the read/write bit in the address; any other value + includes the read/write bit in the address. + """ + return self._rwinclude + + +class BusBItemI2c(SCPICmdRead): + """The ``BUS:B:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.address``: The ``BUS:B:I2C:ADDRess`` command tree. + - ``.clock``: The ``BUS:B:I2C:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:I2C:SCLk`` command tree. + - ``.data``: The ``BUS:B:I2C:DATa`` command tree. + - ``.sdata``: The ``BUS:B:I2C:SDAta`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._address = BusBItemI2cAddress(device, f"{self._cmd_syntax}:ADDRess") + self._clock = BusBItemI2cClock(device, f"{self._cmd_syntax}:CLOCk") + self._sclk = BusBItemI2cSclk(device, f"{self._cmd_syntax}:SCLk") + self._data = BusBItemI2cData(device, f"{self._cmd_syntax}:DATa") + self._sdata = BusBItemI2cSdata(device, f"{self._cmd_syntax}:SDAta") + + @property + def address(self) -> BusBItemI2cAddress: + """Return the ``BUS:B:I2C:ADDRess`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:ADDRess?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:ADDRess?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.rwinclude``: The ``BUS:B:I2C:ADDRess:RWINClude`` command. + """ + return self._address + + @property + def clock(self) -> BusBItemI2cClock: + """Return the ``BUS:B:I2C:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def sclk(self) -> BusBItemI2cSclk: + """Return the ``BUS:B:I2C:SCLk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SCLk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SCLk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:SCLk:SOUrce`` command. + """ + return self._sclk + + @property + def data(self) -> BusBItemI2cData: + """Return the ``BUS:B:I2C:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:DATa:SOUrce`` command. + """ + return self._data + + @property + def sdata(self) -> BusBItemI2cSdata: + """Return the ``BUS:B:I2C:SDAta`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C:SDAta?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C:SDAta?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.source``: The ``BUS:B:I2C:SDAta:SOUrce`` command. + """ + return self._sdata + + +class BusBItemFlexraySource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:SOUrce`` command. + + Description: + - Specifies the FlexRay bus source waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SOUrce {CH|D} + - BUS:B:FLEXray:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + """ + + +class BusBItemFlexraySignal(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:SIGnal`` command. + + Description: + - This command sets or queries the FlexRay signal type for the specified bus. The bus number + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SIGnal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SIGnal?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SIGnal value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BDIFFBP`` sets the FlexRay signal type to BDIFFBP. + - ``BM`` sets the FlexRay signal type to BM. + - ``TXRX`` sets the FlexRay signal type to TXRX. + """ + + +class BusBItemFlexrayChannel(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:CHannel`` command. + + Description: + - This command sets or queries the FlexRay channel type for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:CHannel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:CHannel?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:CHannel value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + ``` + + Info: + - ``B`` is the number of the bus. + - ``A`` specifies the A channel. + - ``B`` specifies the B channel. + """ + + +class BusBItemFlexrayBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:FLEXray:BITRate`` command. + + Description: + - Specifies the bit rate for the FlexRay bus signal. The maximum bitrate is 100 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:BITRate + - BUS:B:FLEXray:BITRate? + ``` + + Info: + - ```` specifies the FlexRay bus bit rate. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + + +class BusBItemFlexray(SCPICmdRead): + """The ``BUS:B:FLEXray`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:FLEXray:BITRate`` command. + - ``.channel``: The ``BUS:B:FLEXray:CHannel`` command. + - ``.signal``: The ``BUS:B:FLEXray:SIGnal`` command. + - ``.source``: The ``BUS:B:FLEXray:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemFlexrayBitrate(device, f"{self._cmd_syntax}:BITRate") + self._channel = BusBItemFlexrayChannel(device, f"{self._cmd_syntax}:CHannel") + self._signal = BusBItemFlexraySignal(device, f"{self._cmd_syntax}:SIGnal") + self._source = BusBItemFlexraySource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemFlexrayBitrate: + """Return the ``BUS:B:FLEXray:BITRate`` command. + + Description: + - Specifies the bit rate for the FlexRay bus signal. The maximum bitrate is 100 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:BITRate + - BUS:B:FLEXray:BITRate? + ``` + + Info: + - ```` specifies the FlexRay bus bit rate. You can enter any positive integer, and + the instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def channel(self) -> BusBItemFlexrayChannel: + """Return the ``BUS:B:FLEXray:CHannel`` command. + + Description: + - This command sets or queries the FlexRay channel type for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:CHannel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:CHannel?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:CHannel value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:CHannel {A|B} + - BUS:B:FLEXray:CHannel? + ``` + + Info: + - ``B`` is the number of the bus. + - ``A`` specifies the A channel. + - ``B`` specifies the B channel. + """ + return self._channel + + @property + def signal(self) -> BusBItemFlexraySignal: + """Return the ``BUS:B:FLEXray:SIGnal`` command. + + Description: + - This command sets or queries the FlexRay signal type for the specified bus. The bus + number is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SIGnal?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SIGnal?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SIGnal value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SIGnal {BDIFFBP|BM|TXRX} + - BUS:B:FLEXray:SIGnal? + ``` + + Info: + - ``B`` is the number of the bus. + - ``BDIFFBP`` sets the FlexRay signal type to BDIFFBP. + - ``BM`` sets the FlexRay signal type to BM. + - ``TXRX`` sets the FlexRay signal type to TXRX. + """ + return self._signal + + @property + def source(self) -> BusBItemFlexraySource: + """Return the ``BUS:B:FLEXray:SOUrce`` command. + + Description: + - Specifies the FlexRay bus source waveform. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:FLEXray:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:FLEXray:SOUrce {CH|D} + - BUS:B:FLEXray:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source waveform. + """ + return self._source + + +class BusBItemEthernetType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:TYPe`` command. + + Description: + - This command specifies the Ethernet standard type: 10Base-T or 100Base-T. The default is + ENET 100 BASETX. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:TYPe {ENET10BASET|ENET100BASETX} + - BUS:B:ETHERnet:TYPe? + ``` + + Info: + - ``ENET10BASET`` specifies the Ethernet type as 10Base-T standard. This standard supports + data transfer rates up to 10 Mbps (also called Twisted Pair Ethernet). + - ``ENET100BASETX`` specifies the Ethernet type as 100Base-T standard. This standard + supports data transfer rates up to 100 Mbps (also called Fast Ethernet). + """ + + +class BusBItemEthernetSourceDplus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + + Description: + - This command specifies the Ethernet data source for the D+ input for single-ended probing. + The default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DPLUs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DPLUs value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DPLUs {CH|D} + - BUS:B:ETHERnet:SOUrce:DPLUs? + ``` + + Info: + - ``CH`` specifies to use one of the analog channels 1-4 as the Ethernet data source for + the D+ input. + - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data source + for the D+ input. Requires option 3-MSO. + """ + + +class BusBItemEthernetSourceDminus(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + + Description: + - This command specifies the Ethernet data source for D- input for single-ended probing. The + default is Channel 2. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DMINus {CH|D} + - BUS:B:ETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies to use one of the analog channels as the Ethernet data source for the + D- input. + - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data source + for the D- input. + """ + + +class BusBItemEthernetSourceDifferential(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the Ethernet data source for differential input. The supported + source waveforms are channels 1-4, math waveform, and reference waveforms 1-4. The default + is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies to use one of the channels 1-4 as the Ethernet data source for + differential input. + - ``MATH`` specifies to use the math waveform as the source for Ethernet data differential + input. + - ``REF`` specifies to use one of the reference waveforms 1-4 as the source for Ethernet + data differential input. + """ + + +class BusBItemEthernetSource(SCPICmdRead): + """The ``BUS:B:ETHERnet:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.differential``: The ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._differential = BusBItemEthernetSourceDifferential( + device, f"{self._cmd_syntax}:DIFFerential" + ) + self._dminus = BusBItemEthernetSourceDminus(device, f"{self._cmd_syntax}:DMINus") + self._dplus = BusBItemEthernetSourceDplus(device, f"{self._cmd_syntax}:DPLUs") + + @property + def differential(self) -> BusBItemEthernetSourceDifferential: + """Return the ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + + Description: + - This command specifies the Ethernet data source for differential input. The supported + source waveforms are channels 1-4, math waveform, and reference waveforms 1-4. The + default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DIFFerential value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DIFFerential {CH|MATH|REF} + - BUS:B:ETHERnet:SOUrce:DIFFerential? + ``` + + Info: + - ``CH`` specifies to use one of the channels 1-4 as the Ethernet data source for + differential input. + - ``MATH`` specifies to use the math waveform as the source for Ethernet data + differential input. + - ``REF`` specifies to use one of the reference waveforms 1-4 as the source for + Ethernet data differential input. + """ + return self._differential + + @property + def dminus(self) -> BusBItemEthernetSourceDminus: + """Return the ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + + Description: + - This command specifies the Ethernet data source for D- input for single-ended probing. + The default is Channel 2. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DMINus?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DMINus value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DMINus {CH|D} + - BUS:B:ETHERnet:SOUrce:DMINus? + ``` + + Info: + - ``CH`` specifies to use one of the analog channels as the Ethernet data source for + the D- input. + - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data + source for the D- input. + """ + return self._dminus + + @property + def dplus(self) -> BusBItemEthernetSourceDplus: + """Return the ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + + Description: + - This command specifies the Ethernet data source for the D+ input for single-ended + probing. The default is channel 1. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce:DPLUs?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce:DPLUs?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ETHERnet:SOUrce:DPLUs value`` command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:SOUrce:DPLUs {CH|D} + - BUS:B:ETHERnet:SOUrce:DPLUs? + ``` + + Info: + - ``CH`` specifies to use one of the analog channels 1-4 as the Ethernet data source + for the D+ input. + - ``D`` specifies to use one of the digital channels D0 - D15 as the Ethernet data + source for the D+ input. Requires option 3-MSO. + """ + return self._dplus + + +class BusBItemEthernetProbe(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:PRObe`` command. + + Description: + - This command specifies the Ethernet probe type: differential or single-ended. The default + is DIFFerential. B is the bus number. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PRObe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PRObe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PRObe {DIFFerential|SINGleended} + - BUS:B:ETHERnet:PRObe? + ``` + + Info: + - ``DIFFerential`` + - ``SINGleended`` + """ + + +class BusBItemEthernetProtocol(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ETHERnet:PROTOcol`` command. + + Description: + - Use this command to set the Ethernet protocol type to TCP/IPv4, or to OTHER. The default + is IPV4. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PROTOcol {IPv4|OTHER} + - BUS:B:ETHERnet:PROTOcol? + ``` + + Info: + - ``IPv4`` sets the Ethernet protocol type to Internet Protocol version 4. + - ``OTHER`` sets the Ethernet protocol type to other than IPv4. + """ + + +class BusBItemEthernet(SCPICmdRead): + """The ``BUS:B:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.protocol``: The ``BUS:B:ETHERnet:PROTOcol`` command. + - ``.probe``: The ``BUS:B:ETHERnet:PRObe`` command. + - ``.source``: The ``BUS:B:ETHERnet:SOUrce`` command tree. + - ``.type``: The ``BUS:B:ETHERnet:TYPe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._protocol = BusBItemEthernetProtocol(device, f"{self._cmd_syntax}:PROTOcol") + self._probe = BusBItemEthernetProbe(device, f"{self._cmd_syntax}:PRObe") + self._source = BusBItemEthernetSource(device, f"{self._cmd_syntax}:SOUrce") + self._type = BusBItemEthernetType(device, f"{self._cmd_syntax}:TYPe") + + @property + def protocol(self) -> BusBItemEthernetProtocol: + """Return the ``BUS:B:ETHERnet:PROTOcol`` command. + + Description: + - Use this command to set the Ethernet protocol type to TCP/IPv4, or to OTHER. The + default is IPV4. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PROTOcol value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PROTOcol {IPv4|OTHER} + - BUS:B:ETHERnet:PROTOcol? + ``` + + Info: + - ``IPv4`` sets the Ethernet protocol type to Internet Protocol version 4. + - ``OTHER`` sets the Ethernet protocol type to other than IPv4. + """ + return self._protocol + + @property + def probe(self) -> BusBItemEthernetProbe: + """Return the ``BUS:B:ETHERnet:PRObe`` command. + + Description: + - This command specifies the Ethernet probe type: differential or single-ended. The + default is DIFFerential. B is the bus number. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:PRObe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:PRObe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:PRObe {DIFFerential|SINGleended} + - BUS:B:ETHERnet:PRObe? + ``` + + Info: + - ``DIFFerential`` + - ``SINGleended`` + """ + return self._probe + + @property + def source(self) -> BusBItemEthernetSource: + """Return the ``BUS:B:ETHERnet:SOUrce`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.differential``: The ``BUS:B:ETHERnet:SOUrce:DIFFerential`` command. + - ``.dminus``: The ``BUS:B:ETHERnet:SOUrce:DMINus`` command. + - ``.dplus``: The ``BUS:B:ETHERnet:SOUrce:DPLUs`` command. + """ + return self._source + + @property + def type(self) -> BusBItemEthernetType: + """Return the ``BUS:B:ETHERnet:TYPe`` command. + + Description: + - This command specifies the Ethernet standard type: 10Base-T or 100Base-T. The default + is ENET 100 BASETX. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet:TYPe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ETHERnet:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ETHERnet:TYPe {ENET10BASET|ENET100BASETX} + - BUS:B:ETHERnet:TYPe? + ``` + + Info: + - ``ENET10BASET`` specifies the Ethernet type as 10Base-T standard. This standard + supports data transfer rates up to 10 Mbps (also called Twisted Pair Ethernet). + - ``ENET100BASETX`` specifies the Ethernet type as 100Base-T standard. This standard + supports data transfer rates up to 100 Mbps (also called Fast Ethernet). + """ + return self._type + + +class BusBItemDisplayType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DISplay:TYPe`` command. + + Description: + - Specifies the display type for bus. You can set up the bus to display the protocol + information, the logic waveforms that comprise the bus, or both. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:TYPe {BUS|BOTh} + - BUS:B:DISplay:TYPe? + ``` + + Info: + - ``BUS`` displays the bus waveforms only. + - ``BOTh`` displays both the bus and logic waveforms. + """ + + +class BusBItemDisplayFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the numerical information in the bus waveform. The + display formats supported depend on the ``BUS:BX:TYPE``. Supported display formats Bus + type Display format Audio BINary | HEXadecimal | ASCII | SIGNEDDECimal CAN BINary | + HEXadecimal | MIXed Ethernet BINary | HEXadecimal | ASCII | MIXed FlexRay BINary | + HEXadecimal | MIXed I 2 C BINary | HEXadecimal LIN BINary | HEXadecimal | MiXed + MIL-STD-1553 BINary | HEXadecimal | ASCII|MIXed|BLOCKHEX Parallel BINary | HEXadecimal + RS232C BINary | HEXadecimal | ASCII SPI BINary | HEXadecimal USB BINary | HEXadecimal | + MIXed | MIXED2 SIGNEDDECimal is set using the audio application + ``BUS:BX:AUDIO:DISPLAY:FORMAT`` command. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:FORMat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:FORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:FORMat {BINary|HEXadecimal|ASCII|MIXed|MIXED2|BLOCKHEX} + - BUS:B:DISplay:FORMat? + ``` + + Info: + - ``BINary`` - All values are displayed in binary. + - ``HEXadecimal`` - All values are displayed in hexadecimal. + - ``ASCII`` - All values are displayed in an ASCII format, for RS-232 only. + - ``MIXed`` - Values are displayed in a mixture of hexadecimal, binary, and decimal, + depending on the field. + - ``MIXED2`` - Values are displayed in a mixture of hexadecimal, binary, decimal and ASCII, + depending on the field. + - ``BLOCKHEX`` - Displays the 16-bits of each payload as a block of 4 hexadecimal digits. + """ + + +class BusBItemDisplay(SCPICmdRead): + """The ``BUS:B:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``BUS:B:DISplay:FORMat`` command. + - ``.type``: The ``BUS:B:DISplay:TYPe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemDisplayFormat(device, f"{self._cmd_syntax}:FORMat") + self._type = BusBItemDisplayType(device, f"{self._cmd_syntax}:TYPe") + + @property + def format(self) -> BusBItemDisplayFormat: + """Return the ``BUS:B:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the numerical information in the bus waveform. The + display formats supported depend on the ``BUS:BX:TYPE``. Supported display formats Bus + type Display format Audio BINary | HEXadecimal | ASCII | SIGNEDDECimal CAN BINary | + HEXadecimal | MIXed Ethernet BINary | HEXadecimal | ASCII | MIXed FlexRay BINary | + HEXadecimal | MIXed I 2 C BINary | HEXadecimal LIN BINary | HEXadecimal | MiXed + MIL-STD-1553 BINary | HEXadecimal | ASCII|MIXed|BLOCKHEX Parallel BINary | HEXadecimal + RS232C BINary | HEXadecimal | ASCII SPI BINary | HEXadecimal USB BINary | HEXadecimal + | MIXed | MIXED2 SIGNEDDECimal is set using the audio application + ``BUS:BX:AUDIO:DISPLAY:FORMAT`` command. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:FORMat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:FORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:FORMat {BINary|HEXadecimal|ASCII|MIXed|MIXED2|BLOCKHEX} + - BUS:B:DISplay:FORMat? + ``` + + Info: + - ``BINary`` - All values are displayed in binary. + - ``HEXadecimal`` - All values are displayed in hexadecimal. + - ``ASCII`` - All values are displayed in an ASCII format, for RS-232 only. + - ``MIXed`` - Values are displayed in a mixture of hexadecimal, binary, and decimal, + depending on the field. + - ``MIXED2`` - Values are displayed in a mixture of hexadecimal, binary, decimal and + ASCII, depending on the field. + - ``BLOCKHEX`` - Displays the 16-bits of each payload as a block of 4 hexadecimal + digits. + """ + return self._format + + @property + def type(self) -> BusBItemDisplayType: + """Return the ``BUS:B:DISplay:TYPe`` command. + + Description: + - Specifies the display type for bus. You can set up the bus to display the protocol + information, the logic waveforms that comprise the bus, or both. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:DISplay:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:DISplay:TYPe {BUS|BOTh} + - BUS:B:DISplay:TYPe? + ``` + + Info: + - ``BUS`` displays the bus waveforms only. + - ``BOTh`` displays both the bus and logic waveforms. + """ + return self._type + + +class BusBItemCanStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:STANDard`` command. + + Description: + - Specifies the CAN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:STANDard value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:STANDard {CAN2X|CANFD} string + - BUS:B:CAN:STANDard? + ``` + + Info: + - ``CAN2X`` sets the CAN bus standard to CAN 2.0. + - ``CANFD`` sets the CAN bus standard to CAN FD. + """ + + +class BusBItemCanSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:SOUrce`` command. + + Description: + - Specifies the CAN bus data source. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SOUrce?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SOUrce {CH|D} + - BUS:B:CAN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform. + - ``D`` specifies a digital channel as the data source waveform. (Requires installation + of option 3-MSO.). + """ + + +class BusBItemCanSamplepoint(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:SAMPLEpoint`` command. + + Description: + - This command sets or queries the sample point for the specified CAN bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the sample point, in percent, for the specified CAN bus. + """ + + +class BusBItemCanProbe(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:PRObe`` command. + + Description: + - Specifies the probing method for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:PRObe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:PRObe {CANH|CANL|RX|TX|DIFFerential} + - BUS:B:CAN:PRObe? + ``` + + Info: + - ``CANH`` specifies the single-ended CANH signal, as specified by the CAN standard. + - ``CANL`` specifies the single-ended CANL signal, as specified by the CAN standard. + - ``RX`` specifies the receive signal on the bus side of the CAN transceiver. + - ``TX`` specifies the transmit signal. + - ``DIFFerential`` specifies the differential CAN signal. + """ + + +class BusBItemCanFdStandard(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:FD:STANDard`` command. + + Description: + - Specifies the CAN FD standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:STANDard {ISO | NONISO} string + - BUS:B:CAN:FD:STANDard? + ``` + + Info: + - ``ISO`` sets the CAN FD standard to ISO CAN FD (11898-``1:2015``). + - ``NONISO`` sets the CAN FD standard to non-ISO CAN FD (``Bosch:2012``). + """ + + +class BusBItemCanFdBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:FD:BITRate`` command. + + Description: + - Specifies the FD bit rate for the CAN bus. This is the bitrate used for CAN FD frames + transmitted with increased data phase rates. The maximum bitrate is 10 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:BITRate + - BUS:B:CAN:FD:BITRate? + ``` + + Info: + - ```` is the FD bit rate. The instrument supports bit rates at 100 bps intervals. You + can enter any positive integer, and the instrument will coerce the value to the closest + supported bit rate. + """ + + +class BusBItemCanFd(SCPICmdRead): + """The ``BUS:B:CAN:FD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:CAN:FD:BITRate`` command. + - ``.standard``: The ``BUS:B:CAN:FD:STANDard`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemCanFdBitrate(device, f"{self._cmd_syntax}:BITRate") + self._standard = BusBItemCanFdStandard(device, f"{self._cmd_syntax}:STANDard") + + @property + def bitrate(self) -> BusBItemCanFdBitrate: + """Return the ``BUS:B:CAN:FD:BITRate`` command. + + Description: + - Specifies the FD bit rate for the CAN bus. This is the bitrate used for CAN FD frames + transmitted with increased data phase rates. The maximum bitrate is 10 Mbps. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:BITRate + - BUS:B:CAN:FD:BITRate? + ``` + + Info: + - ```` is the FD bit rate. The instrument supports bit rates at 100 bps intervals. + You can enter any positive integer, and the instrument will coerce the value to the + closest supported bit rate. + """ + return self._bitrate + + @property + def standard(self) -> BusBItemCanFdStandard: + """Return the ``BUS:B:CAN:FD:STANDard`` command. + + Description: + - Specifies the CAN FD standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD:STANDard?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:FD:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:FD:STANDard {ISO | NONISO} string + - BUS:B:CAN:FD:STANDard? + ``` + + Info: + - ``ISO`` sets the CAN FD standard to ISO CAN FD (11898-``1:2015``). + - ``NONISO`` sets the CAN FD standard to non-ISO CAN FD (``Bosch:2012``). + """ + return self._standard + + +class BusBItemCanBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:CAN:BITRate`` command. + + Description: + - Specifies the bit rate for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:BITRate value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:BITRate + - BUS:B:CAN:BITRate? + ``` + + Info: + - ```` is the bit rate. The instrument supports bit rates at 10 bps intervals. You can + enter any positive integer, and the instrument will coerce the value to the closest + supported bit rate. + """ + + +class BusBItemCan(SCPICmdRead): + """The ``BUS:B:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:CAN:BITRate`` command. + - ``.fd``: The ``BUS:B:CAN:FD`` command tree. + - ``.probe``: The ``BUS:B:CAN:PRObe`` command. + - ``.samplepoint``: The ``BUS:B:CAN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:CAN:SOUrce`` command. + - ``.standard``: The ``BUS:B:CAN:STANDard`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemCanBitrate(device, f"{self._cmd_syntax}:BITRate") + self._fd = BusBItemCanFd(device, f"{self._cmd_syntax}:FD") + self._probe = BusBItemCanProbe(device, f"{self._cmd_syntax}:PRObe") + self._samplepoint = BusBItemCanSamplepoint(device, f"{self._cmd_syntax}:SAMPLEpoint") + self._source = BusBItemCanSource(device, f"{self._cmd_syntax}:SOUrce") + self._standard = BusBItemCanStandard(device, f"{self._cmd_syntax}:STANDard") + + @property + def bitrate(self) -> BusBItemCanBitrate: + """Return the ``BUS:B:CAN:BITRate`` command. + + Description: + - Specifies the bit rate for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:BITRate?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:BITRate + - BUS:B:CAN:BITRate? + ``` + + Info: + - ```` is the bit rate. The instrument supports bit rates at 10 bps intervals. You + can enter any positive integer, and the instrument will coerce the value to the + closest supported bit rate. + """ + return self._bitrate + + @property + def fd(self) -> BusBItemCanFd: + """Return the ``BUS:B:CAN:FD`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:FD?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:FD?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CAN:FD:BITRate`` command. + - ``.standard``: The ``BUS:B:CAN:FD:STANDard`` command. + """ + return self._fd + + @property + def probe(self) -> BusBItemCanProbe: + """Return the ``BUS:B:CAN:PRObe`` command. + + Description: + - Specifies the probing method for the CAN bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:PRObe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:PRObe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:PRObe value`` command. + + SCPI Syntax: + ``` + - BUS:B:CAN:PRObe {CANH|CANL|RX|TX|DIFFerential} + - BUS:B:CAN:PRObe? + ``` + + Info: + - ``CANH`` specifies the single-ended CANH signal, as specified by the CAN standard. + - ``CANL`` specifies the single-ended CANL signal, as specified by the CAN standard. + - ``RX`` specifies the receive signal on the bus side of the CAN transceiver. + - ``TX`` specifies the transmit signal. + - ``DIFFerential`` specifies the differential CAN signal. + """ + return self._probe + + @property + def samplepoint(self) -> BusBItemCanSamplepoint: + """Return the ``BUS:B:CAN:SAMPLEpoint`` command. + + Description: + - This command sets or queries the sample point for the specified CAN bus. The bus is + specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SAMPLEpoint value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SAMPLEpoint + - BUS:B:CAN:SAMPLEpoint? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` is the sample point, in percent, for the specified CAN bus. + """ + return self._samplepoint + + @property + def source(self) -> BusBItemCanSource: + """Return the ``BUS:B:CAN:SOUrce`` command. + + Description: + - Specifies the CAN bus data source. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:SOUrce {CH|D} + - BUS:B:CAN:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform. + - ``D`` specifies a digital channel as the data source waveform. (Requires + installation of option 3-MSO.). + """ + return self._source + + @property + def standard(self) -> BusBItemCanStandard: + """Return the ``BUS:B:CAN:STANDard`` command. + + Description: + - Specifies the CAN bus standard to use. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN:STANDard?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN:STANDard?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:CAN:STANDard value`` + command. + + SCPI Syntax: + ``` + - BUS:B:CAN:STANDard {CAN2X|CANFD} string + - BUS:B:CAN:STANDard? + ``` + + Info: + - ``CAN2X`` sets the CAN bus standard to CAN 2.0. + - ``CANFD`` sets the CAN bus standard to CAN FD. + """ + return self._standard + + +class BusBItemAudioWordselSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + + Description: + - Specifies the word select source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:SOUrce {CH|D} + - BUS:B:AUDio:WORDSel:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the word select source waveform . + - ``D`` specifies a digital channel as the word select source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemAudioWordselPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel:POLarity`` command. + + Description: + - This command sets or queries the word select source polarity for the specified audio bus. + The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:WORDSel:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:WORDSel:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies positive polarity. + - ``INVERTed`` specifies negative polarity. + """ + + +class BusBItemAudioWordsel(SCPICmdRead): + """The ``BUS:B:AUDio:WORDSel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:WORDSel:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioWordselPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemAudioWordselSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioWordselPolarity: + """Return the ``BUS:B:AUDio:WORDSel:POLarity`` command. + + Description: + - This command sets or queries the word select source polarity for the specified audio + bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:WORDSel:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:WORDSel:POLarity? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NORMal`` specifies positive polarity. + - ``INVERTed`` specifies negative polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemAudioWordselSource: + """Return the ``BUS:B:AUDio:WORDSel:SOUrce`` command. + + Description: + - Specifies the word select source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:WORDSel:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:WORDSel:SOUrce {CH|D} + - BUS:B:AUDio:WORDSel:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the word select source waveform . + - ``D`` specifies a digital channel as the word select source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemAudioType(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:TYPe`` command. + + Description: + - This command sets or queries the audio format (type) for the specified audio bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:TYPe {I2S|LJ|RJ|TDM} + - BUS:B:AUDio:TYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``I2S`` specifies the I2S audio format. + - ``LJ`` specifies the left-justified audio format. + - ``RJ`` specifies the right-justified audio format. + - ``TDM`` specifies the time-division multiplexing audio format. + """ + + +class BusBItemAudioFramesyncSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + + Description: + - Specifies the frame sync source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:SOUrce {CH|D} + - BUS:B:AUDio:FRAMESync:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the frame sync source waveform. + - ``D`` specifies a digital channel as the frame sync source waveform. (Requires option + 3-MSO.). + """ + + +class BusBItemAudioFramesyncPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAMESync:POLarity`` command. + + Description: + - Specifies the frame sync polarity for the AUDIO bus - falling or rising edge. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:POLarity {FALL|RISe} + - BUS:B:AUDio:FRAMESync:POLarity? + ``` + + Info: + - ``FALL`` specifies the falling edge as the frame sync polarity. + - ``RISe`` specifies the rising edge as the frame sync polarity. + """ + + +class BusBItemAudioFramesync(SCPICmdRead): + """The ``BUS:B:AUDio:FRAMESync`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:FRAMESync:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioFramesyncPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemAudioFramesyncSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioFramesyncPolarity: + """Return the ``BUS:B:AUDio:FRAMESync:POLarity`` command. + + Description: + - Specifies the frame sync polarity for the AUDIO bus - falling or rising edge. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:POLarity?`` + query. + - Using the ``.verify(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:POLarity?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:POLarity {FALL|RISe} + - BUS:B:AUDio:FRAMESync:POLarity? + ``` + + Info: + - ``FALL`` specifies the falling edge as the frame sync polarity. + - ``RISe`` specifies the rising edge as the frame sync polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemAudioFramesyncSource: + """Return the ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + + Description: + - Specifies the frame sync source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` + query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:FRAMESync:SOUrce value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAMESync:SOUrce {CH|D} + - BUS:B:AUDio:FRAMESync:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the frame sync source waveform. + - ``D`` specifies a digital channel as the frame sync source waveform. (Requires + option 3-MSO.). + """ + return self._source + + +class BusBItemAudioFrameSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:FRAME:SIZe`` command. + + Description: + - This command sets or queries the number of audio channels in each frame for the specified + AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of channels in each frame. + """ + + +class BusBItemAudioFrame(SCPICmdRead): + """The ``BUS:B:AUDio:FRAME`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.size``: The ``BUS:B:AUDio:FRAME:SIZe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemAudioFrameSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def size(self) -> BusBItemAudioFrameSize: + """Return the ``BUS:B:AUDio:FRAME:SIZe`` command. + + Description: + - This command sets or queries the number of audio channels in each frame for the + specified AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:FRAME:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:FRAME:SIZe + - BUS:B:AUDio:FRAME:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of channels in each frame. + """ + return self._size + + +class BusBItemAudioDisplayFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DISplay:FORMat value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DISplay:FORMat {BINary|HEXadecimal|SIGNEDDECimal} + - BUS:B:AUDio:DISplay:FORMat? + ``` + + Info: + - ``BINary`` specifies a binary data display. + - ``HEXadecimal`` specifies a hexadecimal data display. + - ``SIGNEDDECimal`` specifies a signed decimal data display. + """ + + +class BusBItemAudioDisplay(SCPICmdRead): + """The ``BUS:B:AUDio:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``BUS:B:AUDio:DISplay:FORMat`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemAudioDisplayFormat(device, f"{self._cmd_syntax}:FORMat") + + @property + def format(self) -> BusBItemAudioDisplayFormat: + """Return the ``BUS:B:AUDio:DISplay:FORMat`` command. + + Description: + - Specifies the display format for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay:FORMat?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:DISplay:FORMat value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DISplay:FORMat {BINary|HEXadecimal|SIGNEDDECimal} + - BUS:B:AUDio:DISplay:FORMat? + ``` + + Info: + - ``BINary`` specifies a binary data display. + - ``HEXadecimal`` specifies a hexadecimal data display. + - ``SIGNEDDECimal`` specifies a signed decimal data display. + """ + return self._format + + +class BusBItemAudioDataSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:SOUrce`` command. + + Description: + - Specifies the data source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SOUrce {CH|D} + - BUS:B:AUDio:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. + - ``D`` specifies a digital channel as the data source waveform for the audio bus. + (Requires option 3-MSO.). + """ + + +class BusBItemAudioDataSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per channel for the specified audio bus. + This command only applies to the TDM Audio type. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NR1`` specifies the number of bits per word. + """ + + +class BusBItemAudioDataPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:DATa:POLarity`` command. + + Description: + - Specifies the data polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:DATa:POLarity? + ``` + + Info: + - ``NORMal`` specifies positive data polarity for the audio bus. + - ``INVERTed`` specifies negative data polarity for the audio bus. + """ + + +class BusBItemAudioData(SCPICmdRead): + """The ``BUS:B:AUDio:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:DATa:POLarity`` command. + - ``.size``: The ``BUS:B:AUDio:DATa:SIZe`` command. + - ``.source``: The ``BUS:B:AUDio:DATa:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioDataPolarity(device, f"{self._cmd_syntax}:POLarity") + self._size = BusBItemAudioDataSize(device, f"{self._cmd_syntax}:SIZe") + self._source = BusBItemAudioDataSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioDataPolarity: + """Return the ``BUS:B:AUDio:DATa:POLarity`` command. + + Description: + - Specifies the data polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:DATa:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:POLarity {NORMal|INVERTed} + - BUS:B:AUDio:DATa:POLarity? + ``` + + Info: + - ``NORMal`` specifies positive data polarity for the audio bus. + - ``INVERTed`` specifies negative data polarity for the audio bus. + """ + return self._polarity + + @property + def size(self) -> BusBItemAudioDataSize: + """Return the ``BUS:B:AUDio:DATa:SIZe`` command. + + Description: + - This command sets or queries the number of bits per channel for the specified audio + bus. This command only applies to the TDM Audio type. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SIZe + - BUS:B:AUDio:DATa:SIZe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``NR1`` specifies the number of bits per word. + """ + return self._size + + @property + def source(self) -> BusBItemAudioDataSource: + """Return the ``BUS:B:AUDio:DATa:SOUrce`` command. + + Description: + - Specifies the data source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:DATa:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:DATa:SOUrce {CH|D} + - BUS:B:AUDio:DATa:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the data source waveform for the audio bus. + - ``D`` specifies a digital channel as the data source waveform for the audio bus. + (Requires option 3-MSO.). + """ + return self._source + + +class BusBItemAudioClockSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:SOUrce {CH|D} + - BUS:B:AUDio:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``D`` specifies a digital channel as the clock source waveform for the audio bus. + (Requires installation of option 3-MSO.). + """ + + +class BusBItemAudioClockPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk:POLarity`` command. + + Description: + - Specifies the clock polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CLOCk:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISe} + - BUS:B:AUDio:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` sets falling edge as the clock polarity. + - ``RISe`` sets rising edge as the clock polarity. + """ + + +class BusBItemAudioClock(SCPICmdRead): + """The ``BUS:B:AUDio:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.polarity``: The ``BUS:B:AUDio:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._polarity = BusBItemAudioClockPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemAudioClockSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def polarity(self) -> BusBItemAudioClockPolarity: + """Return the ``BUS:B:AUDio:CLOCk:POLarity`` command. + + Description: + - Specifies the clock polarity for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:AUDio:CLOCk:POLarity value`` command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:POLarity {FALL|RISe} + - BUS:B:AUDio:CLOCk:POLarity? + ``` + + Info: + - ``FALL`` sets falling edge as the clock polarity. + - ``RISe`` sets rising edge as the clock polarity. + """ + return self._polarity + + @property + def source(self) -> BusBItemAudioClockSource: + """Return the ``BUS:B:AUDio:CLOCk:SOUrce`` command. + + Description: + - Specifies the clock source waveform for the AUDIO bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CLOCk:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CLOCk:SOUrce {CH|D} + - BUS:B:AUDio:CLOCk:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the clock source waveform for the audio bus. + - ``D`` specifies a digital channel as the clock source waveform for the audio bus. + (Requires installation of option 3-MSO.). + """ + return self._source + + +class BusBItemAudioChannelSize(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:CHANnel:SIZe`` command. + + Description: + - Specifies the number of bits per channel for the AUDIO bus. (To specify the number of bits + per word, use ``BUS:BX:AUDIO:DATA:SIZE``). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CHANnel:SIZe + - BUS:B:AUDio:CHANnel:SIZe? + ``` + + Info: + - ```` specifies the number of bits per channel. + """ + + +class BusBItemAudioChannel(SCPICmdRead): + """The ``BUS:B:AUDio:CHANnel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.size``: The ``BUS:B:AUDio:CHANnel:SIZe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._size = BusBItemAudioChannelSize(device, f"{self._cmd_syntax}:SIZe") + + @property + def size(self) -> BusBItemAudioChannelSize: + """Return the ``BUS:B:AUDio:CHANnel:SIZe`` command. + + Description: + - Specifies the number of bits per channel for the AUDIO bus. (To specify the number of + bits per word, use ``BUS:BX:AUDIO:DATA:SIZE``). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:CHANnel:SIZe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:CHANnel:SIZe + - BUS:B:AUDio:CHANnel:SIZe? + ``` + + Info: + - ```` specifies the number of bits per channel. + """ + return self._size + + +class BusBItemAudioBitorder(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:BITOrder`` command. + + Description: + - Specifies the bit order for the specified AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITOrder?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus. + - ``MSB`` specifies that the most significant bit will be expected first in the order. + - ``LSB`` specifies that the least significant bit will be expected first in the order. + """ + + +class BusBItemAudioBitdelay(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:AUDio:BITDelay`` command. + + Description: + - This command sets or queries the number of delay bits for the specified AUDIO bus. The bus + is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITDelay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITDelay?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITDelay value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of delay bits. + """ + + +# pylint: disable=too-many-instance-attributes +class BusBItemAudio(SCPICmdRead): + """The ``BUS:B:AUDio`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Properties: + - ``.bitdelay``: The ``BUS:B:AUDio:BITDelay`` command. + - ``.bitorder``: The ``BUS:B:AUDio:BITOrder`` command. + - ``.channel``: The ``BUS:B:AUDio:CHANnel`` command tree. + - ``.clock``: The ``BUS:B:AUDio:CLOCk`` command tree. + - ``.data``: The ``BUS:B:AUDio:DATa`` command tree. + - ``.display``: The ``BUS:B:AUDio:DISplay`` command tree. + - ``.frame``: The ``BUS:B:AUDio:FRAME`` command tree. + - ``.framesync``: The ``BUS:B:AUDio:FRAMESync`` command tree. + - ``.type``: The ``BUS:B:AUDio:TYPe`` command. + - ``.wordsel``: The ``BUS:B:AUDio:WORDSel`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitdelay = BusBItemAudioBitdelay(device, f"{self._cmd_syntax}:BITDelay") + self._bitorder = BusBItemAudioBitorder(device, f"{self._cmd_syntax}:BITOrder") + self._channel = BusBItemAudioChannel(device, f"{self._cmd_syntax}:CHANnel") + self._clock = BusBItemAudioClock(device, f"{self._cmd_syntax}:CLOCk") + self._data = BusBItemAudioData(device, f"{self._cmd_syntax}:DATa") + self._display = BusBItemAudioDisplay(device, f"{self._cmd_syntax}:DISplay") + self._frame = BusBItemAudioFrame(device, f"{self._cmd_syntax}:FRAME") + self._framesync = BusBItemAudioFramesync(device, f"{self._cmd_syntax}:FRAMESync") + self._type = BusBItemAudioType(device, f"{self._cmd_syntax}:TYPe") + self._wordsel = BusBItemAudioWordsel(device, f"{self._cmd_syntax}:WORDSel") + + @property + def bitdelay(self) -> BusBItemAudioBitdelay: + """Return the ``BUS:B:AUDio:BITDelay`` command. + + Description: + - This command sets or queries the number of delay bits for the specified AUDIO bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITDelay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITDelay?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITDelay value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITDelay + - BUS:B:AUDio:BITDelay? + ``` + + Info: + - ``B`` is the number of the bus. + - ```` specifies the number of delay bits. + """ + return self._bitdelay + + @property + def bitorder(self) -> BusBItemAudioBitorder: + """Return the ``BUS:B:AUDio:BITOrder`` command. + + Description: + - Specifies the bit order for the specified AUDIO bus. The bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:BITOrder?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:BITOrder?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:BITOrder value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:BITOrder {MSB|LSB} + - BUS:B:AUDio:BITOrder? + ``` + + Info: + - ``B`` is the number of the bus. + - ``MSB`` specifies that the most significant bit will be expected first in the order. + - ``LSB`` specifies that the least significant bit will be expected first in the order. + """ + return self._bitorder + + @property + def channel(self) -> BusBItemAudioChannel: + """Return the ``BUS:B:AUDio:CHANnel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CHANnel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CHANnel?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.size``: The ``BUS:B:AUDio:CHANnel:SIZe`` command. + """ + return self._channel + + @property + def clock(self) -> BusBItemAudioClock: + """Return the ``BUS:B:AUDio:CLOCk`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:CLOCk?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:CLOCk?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:CLOCk:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:CLOCk:SOUrce`` command. + """ + return self._clock + + @property + def data(self) -> BusBItemAudioData: + """Return the ``BUS:B:AUDio:DATa`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DATa?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:DATa:POLarity`` command. + - ``.size``: The ``BUS:B:AUDio:DATa:SIZe`` command. + - ``.source``: The ``BUS:B:AUDio:DATa:SOUrce`` command. + """ + return self._data + + @property + def display(self) -> BusBItemAudioDisplay: + """Return the ``BUS:B:AUDio:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:DISplay?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``BUS:B:AUDio:DISplay:FORMat`` command. + """ + return self._display + + @property + def frame(self) -> BusBItemAudioFrame: + """Return the ``BUS:B:AUDio:FRAME`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAME?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAME?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.size``: The ``BUS:B:AUDio:FRAME:SIZe`` command. + """ + return self._frame + + @property + def framesync(self) -> BusBItemAudioFramesync: + """Return the ``BUS:B:AUDio:FRAMESync`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:FRAMESync?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:FRAMESync?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:FRAMESync:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:FRAMESync:SOUrce`` command. + """ + return self._framesync + + @property + def type(self) -> BusBItemAudioType: + """Return the ``BUS:B:AUDio:TYPe`` command. + + Description: + - This command sets or queries the audio format (type) for the specified audio bus. The + bus is specified by x. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:AUDio:TYPe value`` + command. + + SCPI Syntax: + ``` + - BUS:B:AUDio:TYPe {I2S|LJ|RJ|TDM} + - BUS:B:AUDio:TYPe? + ``` + + Info: + - ``B`` is the number of the bus. + - ``I2S`` specifies the I2S audio format. + - ``LJ`` specifies the left-justified audio format. + - ``RJ`` specifies the right-justified audio format. + - ``TDM`` specifies the time-division multiplexing audio format. + """ + return self._type + + @property + def wordsel(self) -> BusBItemAudioWordsel: + """Return the ``BUS:B:AUDio:WORDSel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio:WORDSel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio:WORDSel?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.polarity``: The ``BUS:B:AUDio:WORDSel:POLarity`` command. + - ``.source``: The ``BUS:B:AUDio:WORDSel:SOUrce`` command. + """ + return self._wordsel + + +class BusBItemArinc429aSource(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:SOUrce`` command. + + Description: + - This command specifies the source for the differential input for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:SOUrce {CH|MATH|REF} + - BUS:B:ARINC429A:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for the differential input. + - ``MATH`` specifies the math waveform as the source for differential input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + + +class BusBItemArinc429aPolarity(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:POLarity`` command. + + Description: + - This command sets the polarity of the ARINC429 bus (normal or inverted). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:POLarity?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:POLarity {NORMal|INVERTed} + - BUS:B:ARINC429A:POLarity? + ``` + + Info: + - ``NORMal`` - A positive differential pulse in the first half of a bit period that then + returns to zero differential represents a 1 on the differential source. + - ``INVERTed`` - A positive differential pulse in the first half of a bit period that then + returns to zero differential represents a 0 on the differential source. + """ + + +class BusBItemArinc429aDataFormat(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:DATA:FORMAT`` command. + + Description: + - Specifies the format of the DATA field in ARINC429 packets on a bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:DATA:FORMAT {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATA:FORMAT? + ``` + + Info: + - ``DATA`` sets the ARINC429 DATA field width to 19 bits wide (covering bits 11 through 29 + of the 32 bit packet). + - ``SDIDATA`` sets the ARINC429 DATA field width to 21 bits wide (covering bits 9 through 29 + of the 32 bit packet). + - ``SDIDATASSM`` sets the ARINC429 DATA field width to 23 bits wide (covering bits 9 through + 31 of the 32 bit packet). + """ + + +class BusBItemArinc429aData(SCPICmdRead): + """The ``BUS:B:ARINC429A:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.format``: The ``BUS:B:ARINC429A:DATA:FORMAT`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._format = BusBItemArinc429aDataFormat(device, f"{self._cmd_syntax}:FORMAT") + + @property + def format(self) -> BusBItemArinc429aDataFormat: + """Return the ``BUS:B:ARINC429A:DATA:FORMAT`` command. + + Description: + - Specifies the format of the DATA field in ARINC429 packets on a bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA:FORMAT?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``BUS:B:ARINC429A:DATA:FORMAT value`` command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:DATA:FORMAT {DATA|SDIDATA|SDIDATASSM} + - BUS:B:ARINC429A:DATA:FORMAT? + ``` + + Info: + - ``DATA`` sets the ARINC429 DATA field width to 19 bits wide (covering bits 11 through + 29 of the 32 bit packet). + - ``SDIDATA`` sets the ARINC429 DATA field width to 21 bits wide (covering bits 9 + through 29 of the 32 bit packet). + - ``SDIDATASSM`` sets the ARINC429 DATA field width to 23 bits wide (covering bits 9 + through 31 of the 32 bit packet). + """ + return self._format + + +class BusBItemArinc429aBitrate(SCPICmdWrite, SCPICmdRead): + """The ``BUS:B:ARINC429A:BITRate`` command. + + Description: + - This command specifies the bit rate for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:BITRate?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:BITRate {LOW|HI|} + - BUS:B:ARINC429A:BITRate? + ``` + + Info: + - ``LOW`` sets the ARINC429 bit rate to handle low speed signals (12000 bits-per-second to + 14500 bits-per-second). + - ``HI`` sets the ARINC429 bit rate to handle high speed signals (100,000 bits-per-second). + - ```` is a bit rate in bits-per-second. You can enter any positive integer, and the + instrument will coerce the value to the closest supported bit rate. + """ + + +class BusBItemArinc429a(SCPICmdRead): + """The ``BUS:B:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bitrate``: The ``BUS:B:ARINC429A:BITRate`` command. + - ``.data``: The ``BUS:B:ARINC429A:DATA`` command tree. + - ``.polarity``: The ``BUS:B:ARINC429A:POLarity`` command. + - ``.source``: The ``BUS:B:ARINC429A:SOUrce`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bitrate = BusBItemArinc429aBitrate(device, f"{self._cmd_syntax}:BITRate") + self._data = BusBItemArinc429aData(device, f"{self._cmd_syntax}:DATA") + self._polarity = BusBItemArinc429aPolarity(device, f"{self._cmd_syntax}:POLarity") + self._source = BusBItemArinc429aSource(device, f"{self._cmd_syntax}:SOUrce") + + @property + def bitrate(self) -> BusBItemArinc429aBitrate: + """Return the ``BUS:B:ARINC429A:BITRate`` command. + + Description: + - This command specifies the bit rate for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:BITRate?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:BITRate?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:BITRate value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:BITRate {LOW|HI|} + - BUS:B:ARINC429A:BITRate? + ``` + + Info: + - ``LOW`` sets the ARINC429 bit rate to handle low speed signals (12000 bits-per-second + to 14500 bits-per-second). + - ``HI`` sets the ARINC429 bit rate to handle high speed signals (100,000 + bits-per-second). + - ```` is a bit rate in bits-per-second. You can enter any positive integer, and + the instrument will coerce the value to the closest supported bit rate. + """ + return self._bitrate + + @property + def data(self) -> BusBItemArinc429aData: + """Return the ``BUS:B:ARINC429A:DATA`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:DATA?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:DATA?`` query + and raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``BUS:B:ARINC429A:DATA:FORMAT`` command. + """ + return self._data + + @property + def polarity(self) -> BusBItemArinc429aPolarity: + """Return the ``BUS:B:ARINC429A:POLarity`` command. + + Description: + - This command sets the polarity of the ARINC429 bus (normal or inverted). + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:POLarity?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:POLarity?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:POLarity value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:POLarity {NORMal|INVERTed} + - BUS:B:ARINC429A:POLarity? + ``` + + Info: + - ``NORMal`` - A positive differential pulse in the first half of a bit period that then + returns to zero differential represents a 1 on the differential source. + - ``INVERTed`` - A positive differential pulse in the first half of a bit period that + then returns to zero differential represents a 0 on the differential source. + """ + return self._polarity + + @property + def source(self) -> BusBItemArinc429aSource: + """Return the ``BUS:B:ARINC429A:SOUrce`` command. + + Description: + - This command specifies the source for the differential input for the ARINC429 bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A:SOUrce?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:ARINC429A:SOUrce value`` + command. + + SCPI Syntax: + ``` + - BUS:B:ARINC429A:SOUrce {CH|MATH|REF} + - BUS:B:ARINC429A:SOUrce? + ``` + + Info: + - ``CH`` specifies an analog channel as the source for the differential input. + - ``MATH`` specifies the math waveform as the source for differential input. + - ``REF`` specifies a reference waveform as the source for differential input. + """ + return self._source + + +# pylint: disable=too-many-instance-attributes +class BusBItem(ValidatedDynamicNumberCmd, SCPICmdRead): + """The ``BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.arinc429a``: The ``BUS:B:ARINC429A`` command tree. + - ``.audio``: The ``BUS:B:AUDio`` command tree. + - ``.can``: The ``BUS:B:CAN`` command tree. + - ``.display``: The ``BUS:B:DISplay`` command tree. + - ``.ethernet``: The ``BUS:B:ETHERnet`` command tree. + - ``.flexray``: The ``BUS:B:FLEXray`` command tree. + - ``.i2c``: The ``BUS:B:I2C`` command tree. + - ``.label``: The ``BUS:B:LABel`` command. + - ``.lin``: The ``BUS:B:LIN`` command tree. + - ``.mil1553b``: The ``BUS:B:MIL1553B`` command tree. + - ``.parallel``: The ``BUS:B:PARallel`` command tree. + - ``.position``: The ``BUS:B:POSition`` command. + - ``.rs232c``: The ``BUS:B:RS232C`` command tree. + - ``.sent``: The ``BUS:B:SENT`` command tree. + - ``.spi``: The ``BUS:B:SPI`` command tree. + - ``.state``: The ``BUS:B:STATE`` command. + - ``.type``: The ``BUS:B:TYPe`` command. + - ``.usb``: The ``BUS:B:USB`` command tree. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._arinc429a = BusBItemArinc429a(device, f"{self._cmd_syntax}:ARINC429A") + self._audio = BusBItemAudio(device, f"{self._cmd_syntax}:AUDio") + self._can = BusBItemCan(device, f"{self._cmd_syntax}:CAN") + self._display = BusBItemDisplay(device, f"{self._cmd_syntax}:DISplay") + self._ethernet = BusBItemEthernet(device, f"{self._cmd_syntax}:ETHERnet") + self._flexray = BusBItemFlexray(device, f"{self._cmd_syntax}:FLEXray") + self._i2c = BusBItemI2c(device, f"{self._cmd_syntax}:I2C") + self._label = BusBItemLabel(device, f"{self._cmd_syntax}:LABel") + self._lin = BusBItemLin(device, f"{self._cmd_syntax}:LIN") + self._mil1553b = BusBItemMil1553b(device, f"{self._cmd_syntax}:MIL1553B") + self._parallel = BusBItemParallel(device, f"{self._cmd_syntax}:PARallel") + self._position = BusBItemPosition(device, f"{self._cmd_syntax}:POSition") + self._rs232c = BusBItemRs232c(device, f"{self._cmd_syntax}:RS232C") + self._sent = BusBItemSent(device, f"{self._cmd_syntax}:SENT") + self._spi = BusBItemSpi(device, f"{self._cmd_syntax}:SPI") + self._state = BusBItemState(device, f"{self._cmd_syntax}:STATE") + self._type = BusBItemType(device, f"{self._cmd_syntax}:TYPe") + self._usb = BusBItemUsb(device, f"{self._cmd_syntax}:USB") + + @property + def arinc429a(self) -> BusBItemArinc429a: + """Return the ``BUS:B:ARINC429A`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ARINC429A?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ARINC429A?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:ARINC429A:BITRate`` command. + - ``.data``: The ``BUS:B:ARINC429A:DATA`` command tree. + - ``.polarity``: The ``BUS:B:ARINC429A:POLarity`` command. + - ``.source``: The ``BUS:B:ARINC429A:SOUrce`` command. + """ + return self._arinc429a + + @property + def audio(self) -> BusBItemAudio: + """Return the ``BUS:B:AUDio`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:AUDio?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:AUDio?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.bitdelay``: The ``BUS:B:AUDio:BITDelay`` command. + - ``.bitorder``: The ``BUS:B:AUDio:BITOrder`` command. + - ``.channel``: The ``BUS:B:AUDio:CHANnel`` command tree. + - ``.clock``: The ``BUS:B:AUDio:CLOCk`` command tree. + - ``.data``: The ``BUS:B:AUDio:DATa`` command tree. + - ``.display``: The ``BUS:B:AUDio:DISplay`` command tree. + - ``.frame``: The ``BUS:B:AUDio:FRAME`` command tree. + - ``.framesync``: The ``BUS:B:AUDio:FRAMESync`` command tree. + - ``.type``: The ``BUS:B:AUDio:TYPe`` command. + - ``.wordsel``: The ``BUS:B:AUDio:WORDSel`` command tree. + """ + return self._audio + + @property + def can(self) -> BusBItemCan: + """Return the ``BUS:B:CAN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:CAN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:CAN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:CAN:BITRate`` command. + - ``.fd``: The ``BUS:B:CAN:FD`` command tree. + - ``.probe``: The ``BUS:B:CAN:PRObe`` command. + - ``.samplepoint``: The ``BUS:B:CAN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:CAN:SOUrce`` command. + - ``.standard``: The ``BUS:B:CAN:STANDard`` command. + """ + return self._can + + @property + def display(self) -> BusBItemDisplay: + """Return the ``BUS:B:DISplay`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.format``: The ``BUS:B:DISplay:FORMat`` command. + - ``.type``: The ``BUS:B:DISplay:TYPe`` command. + """ + return self._display + + @property + def ethernet(self) -> BusBItemEthernet: + """Return the ``BUS:B:ETHERnet`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:ETHERnet?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:ETHERnet?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.protocol``: The ``BUS:B:ETHERnet:PROTOcol`` command. + - ``.probe``: The ``BUS:B:ETHERnet:PRObe`` command. + - ``.source``: The ``BUS:B:ETHERnet:SOUrce`` command tree. + - ``.type``: The ``BUS:B:ETHERnet:TYPe`` command. + """ + return self._ethernet + + @property + def flexray(self) -> BusBItemFlexray: + """Return the ``BUS:B:FLEXray`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:FLEXray?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:FLEXray?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:FLEXray:BITRate`` command. + - ``.channel``: The ``BUS:B:FLEXray:CHannel`` command. + - ``.signal``: The ``BUS:B:FLEXray:SIGnal`` command. + - ``.source``: The ``BUS:B:FLEXray:SOUrce`` command. + """ + return self._flexray + + @property + def i2c(self) -> BusBItemI2c: + """Return the ``BUS:B:I2C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:I2C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:I2C?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.address``: The ``BUS:B:I2C:ADDRess`` command tree. + - ``.clock``: The ``BUS:B:I2C:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:I2C:SCLk`` command tree. + - ``.data``: The ``BUS:B:I2C:DATa`` command tree. + - ``.sdata``: The ``BUS:B:I2C:SDAta`` command tree. + """ + return self._i2c + + @property + def label(self) -> BusBItemLabel: + """Return the ``BUS:B:LABel`` command. + + Description: + - Specifies the waveform label for the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LABel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LABel?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:LABel value`` command. + + SCPI Syntax: + ``` + - BUS:B:LABel + - BUS:B:LABel? + ``` + + Info: + - ```` is an alphanumeric string of text, enclosed in quotes, that contains the + text label information for bus . The text string is limited to 30 characters. + """ + return self._label + + @property + def lin(self) -> BusBItemLin: + """Return the ``BUS:B:LIN`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:LIN?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:LIN?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:LIN:BITRate`` command. + - ``.idformat``: The ``BUS:B:LIN:IDFORmat`` command. + - ``.maxbytedelim``: The ``BUS:B:LIN:MAXBytedelim`` command. + - ``.polarity``: The ``BUS:B:LIN:POLarity`` command. + - ``.samplepoint``: The ``BUS:B:LIN:SAMPLEpoint`` command. + - ``.source``: The ``BUS:B:LIN:SOUrce`` command. + - ``.standard``: The ``BUS:B:LIN:STANDard`` command. + """ + return self._lin + + @property + def mil1553b(self) -> BusBItemMil1553b: + """Return the ``BUS:B:MIL1553B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:MIL1553B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:MIL1553B?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus. + + Sub-properties: + - ``.polarity``: The ``BUS:B:MIL1553B:POLarity`` command. + - ``.responsetime``: The ``BUS:B:MIL1553B:RESPonsetime`` command tree. + - ``.source``: The ``BUS:B:MIL1553B:SOUrce`` command. + """ + return self._mil1553b + + @property + def parallel(self) -> BusBItemParallel: + """Return the ``BUS:B:PARallel`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:PARallel?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:PARallel?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bit``: The ``BUS:B:PARallel:BIT`` command tree. + - ``.clock``: The ``BUS:B:PARallel:CLOCk`` command tree. + - ``.width``: The ``BUS:B:PARallel:WIDth`` command. + """ + return self._parallel + + @property + def position(self) -> BusBItemPosition: + """Return the ``BUS:B:POSition`` command. + + Description: + - This command specifies the position of the bus waveform on the display. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:POSition?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:POSition?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:POSition value`` command. + + SCPI Syntax: + ``` + - BUS:B:POSition + - BUS:B:POSition? + ``` + + Info: + - ```` is a floating point number that specifies the position of the bus + waveform on the display. + """ + return self._position + + @property + def rs232c(self) -> BusBItemRs232c: + """Return the ``BUS:B:RS232C`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:RS232C?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:RS232C?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:RS232C:BITRate`` command. + - ``.databits``: The ``BUS:B:RS232C:DATABits`` command. + - ``.delimiter``: The ``BUS:B:RS232C:DELIMiter`` command. + - ``.displaymode``: The ``BUS:B:RS232C:DISplaymode`` command. + - ``.parity``: The ``BUS:B:RS232C:PARity`` command. + - ``.polarity``: The ``BUS:B:RS232C:POLarity`` command. + - ``.rx``: The ``BUS:B:RS232C:RX`` command tree. + - ``.tx``: The ``BUS:B:RS232C:TX`` command tree. + """ + return self._rs232c + + @property + def sent(self) -> BusBItemSent: + """Return the ``BUS:B:SENT`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SENT?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SENT?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.chanwidth``: The ``BUS:B:SENT:CHANWidth`` command. + - ``.nibblecount``: The ``BUS:B:SENT:NIBBLECount`` command. + - ``.numchannel``: The ``BUS:B:SENT:NUMCHANnel`` command. + - ``.pausepulse``: The ``BUS:B:SENT:PAUSEPULSe`` command. + - ``.polarity``: The ``BUS:B:SENT:POLARITY`` command. + - ``.slow``: The ``BUS:B:SENT:SLOW`` command. + - ``.source``: The ``BUS:B:SENT:SOUrce`` command. + - ``.ticktime``: The ``BUS:B:SENT:TICKTIME`` command. + - ``.ticktolerance``: The ``BUS:B:SENT:TICKTOLerance`` command. + """ + return self._sent + + @property + def spi(self) -> BusBItemSpi: + """Return the ``BUS:B:SPI`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:SPI?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:SPI?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Info: + - ``B`` is the number of the bus waveform. + + Sub-properties: + - ``.bitorder``: The ``BUS:B:SPI:BITOrder`` command. + - ``.data``: The ``BUS:B:SPI:DATa`` command tree. + - ``.framing``: The ``BUS:B:SPI:FRAMING`` command. + - ``.idletime``: The ``BUS:B:SPI:IDLETime`` command. + - ``.clock``: The ``BUS:B:SPI:CLOCk`` command tree. + - ``.sclk``: The ``BUS:B:SPI:SCLk`` command tree. + - ``.select``: The ``BUS:B:SPI:SELect`` command tree. + - ``.ss``: The ``BUS:B:SPI:SS`` command tree. + """ + return self._spi + + @property + def state(self) -> BusBItemState: + """Return the ``BUS:B:STATE`` command. + + Description: + - This command specifies the on/off state of the bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:STATE?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:STATE?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:STATE value`` command. + + SCPI Syntax: + ``` + - BUS:B:STATE {ON|OFF|} + - BUS:B:STATE? + ``` + + Info: + - ``ON`` or ≠ 0 turns on the bus. + - ``OFF`` or = 0 turns off the bus. + """ + return self._state + + @property + def type(self) -> BusBItemType: + """Return the ``BUS:B:TYPe`` command. + + Description: + - This command specifies (or queries) the bus type. The supported bus types are + dependent on the oscilloscope model and the installed application models. With the + exception of the parallel bus, all bus types require installation of an application + option. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:TYPe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``BUS:B:TYPe value`` command. + + SCPI Syntax: + ``` + - BUS:B:TYPe {I2C|SPI|CAN|RS232C|PARallel|USB|LIN|FLEXRay|AUDio|ETHERnet|MIL1553B|ARINC429A} + - BUS:B:TYPe? + ``` + + Info: + - ``I2C`` specifies the Inter-IC bus. + - ``SPI`` specifies the Serial Peripheral Interface bus (not available on two-channel + models). + - ``CAN`` specifies the Controller Area Network bus. + - ``RS232C`` specifies the RS-232C bus. + - ``PARallel`` specifies the Parallel bus. + - ``USB`` specifies the USB bus. + - ``LIN`` specifies the LIN bus. + - ``FLEXRay`` specifies the FLexRay bus. + - ``AUDio`` specifies the audio bus. + - ``ETHERnet`` specifies the Ethernet bus. + - ``MIL1553B`` specifies the MIL-STD-1553 bus. + - ``ARINC429A`` specifies the Aeronautical Radio INC (specification 429) bus. + """ # noqa: E501 + return self._type + + @property + def usb(self) -> BusBItemUsb: + """Return the ``BUS:B:USB`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B:USB?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B:USB?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bitrate``: The ``BUS:B:USB:BITRate`` command. + - ``.probe``: The ``BUS:B:USB:PRObe`` command. + - ``.source``: The ``BUS:B:USB:SOUrce`` command tree. + """ + return self._usb + + +class Bus(SCPICmdRead): + """The ``BUS`` command. + + Description: + - Returns the parameters for each serial (if installed) and parallel bus. + + Usage: + - Using the ``.query()`` method will send the ``BUS?`` query. + - Using the ``.verify(value)`` method will send the ``BUS?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - BUS? + ``` + + Properties: + - ``.b``: The ``BUS:B`` command tree. + - ``.lowerthreshold``: The ``BUS:LOWerthreshold`` command tree. + - ``.threshold``: The ``BUS:THReshold`` command tree. + - ``.upperthreshold``: The ``BUS:UPPerthreshold`` command tree. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "BUS") -> None: + super().__init__(device, cmd_syntax) + self._b: Dict[int, BusBItem] = DefaultDictPassKeyToFactory( + lambda x: BusBItem(device, f"{self._cmd_syntax}:B{x}") + ) + self._lowerthreshold = BusLowerthreshold(device, f"{self._cmd_syntax}:LOWerthreshold") + self._threshold = BusThreshold(device, f"{self._cmd_syntax}:THReshold") + self._upperthreshold = BusUpperthreshold(device, f"{self._cmd_syntax}:UPPerthreshold") + + @property + def b(self) -> Dict[int, BusBItem]: + """Return the ``BUS:B`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:B?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:B?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.arinc429a``: The ``BUS:B:ARINC429A`` command tree. + - ``.audio``: The ``BUS:B:AUDio`` command tree. + - ``.can``: The ``BUS:B:CAN`` command tree. + - ``.display``: The ``BUS:B:DISplay`` command tree. + - ``.ethernet``: The ``BUS:B:ETHERnet`` command tree. + - ``.flexray``: The ``BUS:B:FLEXray`` command tree. + - ``.i2c``: The ``BUS:B:I2C`` command tree. + - ``.label``: The ``BUS:B:LABel`` command. + - ``.lin``: The ``BUS:B:LIN`` command tree. + - ``.mil1553b``: The ``BUS:B:MIL1553B`` command tree. + - ``.parallel``: The ``BUS:B:PARallel`` command tree. + - ``.position``: The ``BUS:B:POSition`` command. + - ``.rs232c``: The ``BUS:B:RS232C`` command tree. + - ``.sent``: The ``BUS:B:SENT`` command tree. + - ``.spi``: The ``BUS:B:SPI`` command tree. + - ``.state``: The ``BUS:B:STATE`` command. + - ``.type``: The ``BUS:B:TYPe`` command. + - ``.usb``: The ``BUS:B:USB`` command tree. + """ + return self._b + + @property + def lowerthreshold(self) -> BusLowerthreshold: + """Return the ``BUS:LOWerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:LOWerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:LOWerthreshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``BUS:LOWerthreshold:CH`` command. + - ``.ref``: The ``BUS:LOWerthreshold:REF`` command. + - ``.math``: The ``BUS:LOWerthreshold:MATH`` command. + - ``.math1``: The ``BUS:LOWerthreshold:MATH1`` command. + """ + return self._lowerthreshold + + @property + def threshold(self) -> BusThreshold: + """Return the ``BUS:THReshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:THReshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:THReshold?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``BUS:THReshold:CH`` command. + - ``.d``: The ``BUS:THReshold:D`` command. + """ + return self._threshold + + @property + def upperthreshold(self) -> BusUpperthreshold: + """Return the ``BUS:UPPerthreshold`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``BUS:UPPerthreshold?`` query. + - Using the ``.verify(value)`` method will send the ``BUS:UPPerthreshold?`` query and + raise an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.ch``: The ``BUS:UPPerthreshold:CH`` command. + - ``.ref``: The ``BUS:UPPerthreshold:REF`` command. + - ``.math``: The ``BUS:UPPerthreshold:MATH`` command. + - ``.math1``: The ``BUS:UPPerthreshold:MATH1`` command. + """ + return self._upperthreshold diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/cursor.py b/src/tm_devices/commands/gen_ujuvb_mdo/cursor.py index 7587690b..5a733b71 100644 --- a/src/tm_devices/commands/gen_ujuvb_mdo/cursor.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/cursor.py @@ -1559,16 +1559,13 @@ class CursorSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` - specifies one of the analog waveforms as the cursor source. x has a minimum of - 1 and a maximum of 4. - - ``REF`` - specifies one of the reference waveforms as the cursor source. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` - specifies the cursor source as the math waveform. - - ``BUS`` - specifies the cursor source as one of the bus waveforms. x has a minimum of 1 - and a maximum of 4. - - ``D`` - specifies the cursor source as one of the digital waveforms. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. - - ``AUTO`` - specifies the currently selected waveform. The selected waveform can be + - ``CH`` specifies one of the analog waveforms as the cursor source. + - ``REF`` specifies one of the reference waveforms as the cursor source. + - ``MATH`` specifies the cursor source as the math waveform. + - ``BUS`` specifies the cursor source as one of the bus waveforms. + - ``D`` specifies the cursor source as one of the digital waveforms. (Requires option + 3-MSO.). + - ``AUTO`` specifies the currently selected waveform. The selected waveform can be determined by querying ``SELECT:CONTROL``. """ @@ -2038,16 +2035,13 @@ def source(self) -> CursorSource: ``` Info: - - ``CH`` - specifies one of the analog waveforms as the cursor source. x has a - minimum of 1 and a maximum of 4. - - ``REF`` - specifies one of the reference waveforms as the cursor source. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` - specifies the cursor source as the math waveform. - - ``BUS`` - specifies the cursor source as one of the bus waveforms. x has a minimum - of 1 and a maximum of 4. - - ``D`` - specifies the cursor source as one of the digital waveforms. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. - - ``AUTO`` - specifies the currently selected waveform. The selected waveform can be + - ``CH`` specifies one of the analog waveforms as the cursor source. + - ``REF`` specifies one of the reference waveforms as the cursor source. + - ``MATH`` specifies the cursor source as the math waveform. + - ``BUS`` specifies the cursor source as one of the bus waveforms. + - ``D`` specifies the cursor source as one of the digital waveforms. (Requires option + 3-MSO.). + - ``AUTO`` specifies the currently selected waveform. The selected waveform can be determined by querying ``SELECT:CONTROL``. """ return self._source diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/header.py b/src/tm_devices/commands/gen_ujuvb_mdo/header.py new file mode 100644 index 00000000..c2de9d89 --- /dev/null +++ b/src/tm_devices/commands/gen_ujuvb_mdo/header.py @@ -0,0 +1,55 @@ +"""The header commands module. + +These commands are used in the following models: +MDO3 + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - HEADer {ON|OFF|} + - HEADer? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class Header(SCPICmdWrite, SCPICmdRead): + """The ``HEADer`` command. + + Description: + - This command specifies the Response Header Enable State that causes the oscilloscope to + either include or omit headers on query responses. + + Usage: + - Using the ``.query()`` method will send the ``HEADer?`` query. + - Using the ``.verify(value)`` method will send the ``HEADer?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HEADer value`` command. + + SCPI Syntax: + ``` + - HEADer {ON|OFF|} + - HEADer? + ``` + + Info: + - ``OFF`` sets the Response Header Enable State to false. This causes the oscilloscope to + omit headers on query responses, so that only the argument is returned. + - ``ON`` sets the Response Header Enable State to true. This causes the oscilloscope to + include headers on applicable query responses. You can then use the query response as a + command. + - ```` = 0 sets the Response Header Enable State to false; any other value sets this + state to true. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "HEADer") -> None: + super().__init__(device, cmd_syntax) diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/histogram.py b/src/tm_devices/commands/gen_ujuvb_mdo/histogram.py new file mode 100644 index 00000000..4bc21d94 --- /dev/null +++ b/src/tm_devices/commands/gen_ujuvb_mdo/histogram.py @@ -0,0 +1,572 @@ +"""The histogram commands module. + +These commands are used in the following models: +MDO3 + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - HIStogram:BOX , , , + - HIStogram:BOX? + - HIStogram:BOXPcnt , , , + - HIStogram:BOXPcnt? + - HIStogram:COUNt RESET + - HIStogram:DATa? + - HIStogram:DISplay {OFF|LOG|LINEAr} + - HIStogram:DISplay? + - HIStogram:END? + - HIStogram:MODe {HORizontal|VERTical|OFF} + - HIStogram:MODe? + - HIStogram:SOUrce {CH|MATH|REF} + - HIStogram:SOUrce? + - HIStogram:STARt? + - HIStogram? + ``` +""" + +from typing import Optional, TYPE_CHECKING + +from ..helpers import SCPICmdRead, SCPICmdWrite + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class HistogramStart(SCPICmdRead): + """The ``HIStogram:STARt`` command. + + Description: + - Returns the time (horizontal) or vertical units value (vertical) of the first bin where + the histogram data starts. The ``HISTOGRAM:MODE`` must be either HORizontal or VERTical + for a value to be returned. If the mode is OFF, an error event is set and nothing is + returned. If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is the time of the + left bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units + value of the top bin. The returned value is an . + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:STARt?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram:STARt? + ``` + """ + + +class HistogramSource(SCPICmdWrite, SCPICmdRead): + """The ``HIStogram:SOUrce`` command. + + Description: + - This command sets or queries which source will be compared against the histogram box when + the histogram testing is enabled. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:SOUrce?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:SOUrce value`` command. + + SCPI Syntax: + ``` + - HIStogram:SOUrce {CH|MATH|REF} + - HIStogram:SOUrce? + ``` + + Info: + - ``CH`` selects the analog channel waveform to use as the source for the histogram. The + x variable can be expressed as an integer ranging from 1 through 4. + - ``MATH`` selects the math waveform as the source for the histogram. + - ``REF`` selects a reference waveform as the source for the histogram. The x variable + can be expressed as an integer ranging from 1 through 4. + """ + + +class HistogramMode(SCPICmdWrite, SCPICmdRead): + """The ``HIStogram:MODe`` command. + + Description: + - This command selects the type of histogram to create or disables the histogram display. + The query form either returns the current histogram type or that the histogram display is + disabled. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:MODe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:MODe value`` command. + + SCPI Syntax: + ``` + - HIStogram:MODe {HORizontal|VERTical|OFF} + - HIStogram:MODe? + ``` + + Info: + - ``HORizontal`` enables a horizontally positioned histogram that shows time distribution. + - ``VERTical`` enables a vertically positioned histogram that shows a voltage distribution, + or another distribution such as amperes. + - ``OFF`` disables the collection of the histogram measurement. + """ + + +class HistogramEnd(SCPICmdRead): + """The ``HIStogram:END`` command. + + Description: + - Returns the time (horizontal) or vertical units value (vertical) of the last bin where the + histogram data ends. The ``HISTOGRAM:MODE`` must be either HORizontal or VERTical for a + value to be returned. If the mode is OFF, an error event is set and nothing is returned. + If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is the time of the right bin. + If the ``HISTOGRAM:MODE`` is VERTical the value returned is the vertical units value of + the bottom bin. The returned value is an . + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:END?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:END?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram:END? + ``` + """ + + +class HistogramDisplay(SCPICmdWrite, SCPICmdRead): + """The ``HIStogram:DISplay`` command. + + Description: + - This command sets the scaling of the histogram data display to be the count of each + histogram bin or the log of that count. The default scaling is linear. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:DISplay?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:DISplay value`` command. + + SCPI Syntax: + ``` + - HIStogram:DISplay {OFF|LOG|LINEAr} + - HIStogram:DISplay? + ``` + + Info: + - ```` sets the histogram display to logarithmic scaling. + - ```` sets the histogram display to linear scaling. This is the default setting. + """ + + +class HistogramData(SCPICmdRead): + """The ``HIStogram:DATa`` command. + + Description: + - This query returns the histogram data when ``HIStogram:MODe`` is HORizontal or VERTical. + If the mode is OFF, then no data is returned and an error event is set. The data values + returned for this query represent the number of times the histogram source waveform + samples were coincident with a particular histogram bin. For vertical histograms, this + query returns 256 values, representing the number of times the histogram source waveform + samples were coincident with each of the 256 digitizing levels. Of these 256 values, the + first 2 and last 3 are always 0, as they represent digitizing levels that fall above and + beneath the waveform graticule, respectively. For horizontal histograms, this query + returns 1000 values, representing the number of times the histogram source waveform + samples were coincident with each horizontal pixel column. The time of occurrence for each + of the horizontal bins can be derived using the ``HISTOGRAM:START`` and ``HISTOGRAM:END`` + queries. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:DATa?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram:DATa? + ``` + """ + + +class HistogramCount(SCPICmdWrite): + """The ``HIStogram:COUNt`` command. + + Description: + - This command (no query form) clears the count and statistics for the histogram and the + histogram source data. If the histogram is on, then counting restarts. + + Usage: + - Using the ``.write(value)`` method will send the ``HIStogram:COUNt value`` command. + + SCPI Syntax: + ``` + - HIStogram:COUNt RESET + ``` + + Info: + - ``RESET`` + """ + + +class HistogramBoxpcnt(SCPICmdWrite, SCPICmdRead): + """The ``HIStogram:BOXPcnt`` command. + + Description: + - This command specifies the histogram box coordinates in terms of percentages of the full + screen extents of the source waveform. The arguments refer to the left (percent of the + horizontal screen extent), top (percent of the vertical screen extent), right (percent of + the horizontal screen extent), bottom (percent of the vertical screen extent). The valid + range for these values is 0.0 to 100.0. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:BOXPcnt?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:BOXPcnt?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:BOXPcnt value`` command. + + SCPI Syntax: + ``` + - HIStogram:BOXPcnt , , , + - HIStogram:BOXPcnt? + ``` + + Info: + - ```` is a floating point number that specifies the left position of the histogram box + in percentage coordinates. The default value is 20%. + - ```` specifies the top position of the histogram box in percentage coordinates. The + default value is 80%. + - ```` specifies the right position of the histogram box in percentage coordinates. The + default value is 80%. + - ```` specifies the bottom position of the histogram box in percentage coordinates. + The default value is 20%. + """ + + +class HistogramBox(SCPICmdWrite, SCPICmdRead): + """The ``HIStogram:BOX`` command. + + Description: + - This command specifies the histogram box coordinates in terms of source waveform vertical + and horizontal units. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:BOX?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:BOX?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:BOX value`` command. + + SCPI Syntax: + ``` + - HIStogram:BOX , , , + - HIStogram:BOX? + ``` + + Info: + - ```` is a floating point number that specifies the left position of the histogram box + in source waveform horizontal units. + - ```` specifies the top position of the histogram box in source waveform vertical + units. + - ```` specifies the right position of the histogram box in source waveform horizontal + units. + - ```` specifies the bottom position of the histogram box in source waveform vertical + units. + """ + + +# pylint: disable=too-many-instance-attributes +class Histogram(SCPICmdRead): + """The ``HIStogram`` command. + + Description: + - This query-only query returns all histogram parameters; it queries the state of all + histogram parameters that the user can set. This command is equivalent to selecting + Waveform Histograms from the Measure menu. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram?`` query and raise an + AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram? + ``` + + Properties: + - ``.box``: The ``HIStogram:BOX`` command. + - ``.boxpcnt``: The ``HIStogram:BOXPcnt`` command. + - ``.count``: The ``HIStogram:COUNt`` command. + - ``.data``: The ``HIStogram:DATa`` command. + - ``.display``: The ``HIStogram:DISplay`` command. + - ``.end``: The ``HIStogram:END`` command. + - ``.mode``: The ``HIStogram:MODe`` command. + - ``.source``: The ``HIStogram:SOUrce`` command. + - ``.start``: The ``HIStogram:STARt`` command. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "HIStogram") -> None: + super().__init__(device, cmd_syntax) + self._box = HistogramBox(device, f"{self._cmd_syntax}:BOX") + self._boxpcnt = HistogramBoxpcnt(device, f"{self._cmd_syntax}:BOXPcnt") + self._count = HistogramCount(device, f"{self._cmd_syntax}:COUNt") + self._data = HistogramData(device, f"{self._cmd_syntax}:DATa") + self._display = HistogramDisplay(device, f"{self._cmd_syntax}:DISplay") + self._end = HistogramEnd(device, f"{self._cmd_syntax}:END") + self._mode = HistogramMode(device, f"{self._cmd_syntax}:MODe") + self._source = HistogramSource(device, f"{self._cmd_syntax}:SOUrce") + self._start = HistogramStart(device, f"{self._cmd_syntax}:STARt") + + @property + def box(self) -> HistogramBox: + """Return the ``HIStogram:BOX`` command. + + Description: + - This command specifies the histogram box coordinates in terms of source waveform + vertical and horizontal units. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:BOX?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:BOX?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:BOX value`` command. + + SCPI Syntax: + ``` + - HIStogram:BOX , , , + - HIStogram:BOX? + ``` + + Info: + - ```` is a floating point number that specifies the left position of the histogram + box in source waveform horizontal units. + - ```` specifies the top position of the histogram box in source waveform vertical + units. + - ```` specifies the right position of the histogram box in source waveform + horizontal units. + - ```` specifies the bottom position of the histogram box in source waveform + vertical units. + """ + return self._box + + @property + def boxpcnt(self) -> HistogramBoxpcnt: + """Return the ``HIStogram:BOXPcnt`` command. + + Description: + - This command specifies the histogram box coordinates in terms of percentages of the + full screen extents of the source waveform. The arguments refer to the left (percent + of the horizontal screen extent), top (percent of the vertical screen extent), right + (percent of the horizontal screen extent), bottom (percent of the vertical screen + extent). The valid range for these values is 0.0 to 100.0. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:BOXPcnt?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:BOXPcnt?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:BOXPcnt value`` command. + + SCPI Syntax: + ``` + - HIStogram:BOXPcnt , , , + - HIStogram:BOXPcnt? + ``` + + Info: + - ```` is a floating point number that specifies the left position of the histogram + box in percentage coordinates. The default value is 20%. + - ```` specifies the top position of the histogram box in percentage coordinates. + The default value is 80%. + - ```` specifies the right position of the histogram box in percentage coordinates. + The default value is 80%. + - ```` specifies the bottom position of the histogram box in percentage + coordinates. The default value is 20%. + """ + return self._boxpcnt + + @property + def count(self) -> HistogramCount: + """Return the ``HIStogram:COUNt`` command. + + Description: + - This command (no query form) clears the count and statistics for the histogram and the + histogram source data. If the histogram is on, then counting restarts. + + Usage: + - Using the ``.write(value)`` method will send the ``HIStogram:COUNt value`` command. + + SCPI Syntax: + ``` + - HIStogram:COUNt RESET + ``` + + Info: + - ``RESET`` + """ + return self._count + + @property + def data(self) -> HistogramData: + """Return the ``HIStogram:DATa`` command. + + Description: + - This query returns the histogram data when ``HIStogram:MODe`` is HORizontal or + VERTical. If the mode is OFF, then no data is returned and an error event is set. The + data values returned for this query represent the number of times the histogram source + waveform samples were coincident with a particular histogram bin. For vertical + histograms, this query returns 256 values, representing the number of times the + histogram source waveform samples were coincident with each of the 256 digitizing + levels. Of these 256 values, the first 2 and last 3 are always 0, as they represent + digitizing levels that fall above and beneath the waveform graticule, respectively. + For horizontal histograms, this query returns 1000 values, representing the number of + times the histogram source waveform samples were coincident with each horizontal pixel + column. The time of occurrence for each of the horizontal bins can be derived using + the ``HISTOGRAM:START`` and ``HISTOGRAM:END`` queries. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:DATa?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:DATa?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram:DATa? + ``` + """ + return self._data + + @property + def display(self) -> HistogramDisplay: + """Return the ``HIStogram:DISplay`` command. + + Description: + - This command sets the scaling of the histogram data display to be the count of each + histogram bin or the log of that count. The default scaling is linear. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:DISplay?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:DISplay?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:DISplay value`` command. + + SCPI Syntax: + ``` + - HIStogram:DISplay {OFF|LOG|LINEAr} + - HIStogram:DISplay? + ``` + + Info: + - ```` sets the histogram display to logarithmic scaling. + - ```` sets the histogram display to linear scaling. This is the default + setting. + """ + return self._display + + @property + def end(self) -> HistogramEnd: + """Return the ``HIStogram:END`` command. + + Description: + - Returns the time (horizontal) or vertical units value (vertical) of the last bin where + the histogram data ends. The ``HISTOGRAM:MODE`` must be either HORizontal or VERTical + for a value to be returned. If the mode is OFF, an error event is set and nothing is + returned. If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is the time of + the right bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is the + vertical units value of the bottom bin. The returned value is an . + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:END?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:END?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram:END? + ``` + """ + return self._end + + @property + def mode(self) -> HistogramMode: + """Return the ``HIStogram:MODe`` command. + + Description: + - This command selects the type of histogram to create or disables the histogram + display. The query form either returns the current histogram type or that the + histogram display is disabled. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:MODe?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:MODe?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:MODe value`` command. + + SCPI Syntax: + ``` + - HIStogram:MODe {HORizontal|VERTical|OFF} + - HIStogram:MODe? + ``` + + Info: + - ``HORizontal`` enables a horizontally positioned histogram that shows time + distribution. + - ``VERTical`` enables a vertically positioned histogram that shows a voltage + distribution, or another distribution such as amperes. + - ``OFF`` disables the collection of the histogram measurement. + """ + return self._mode + + @property + def source(self) -> HistogramSource: + """Return the ``HIStogram:SOUrce`` command. + + Description: + - This command sets or queries which source will be compared against the histogram box + when the histogram testing is enabled. + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:SOUrce?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:SOUrce?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``HIStogram:SOUrce value`` command. + + SCPI Syntax: + ``` + - HIStogram:SOUrce {CH|MATH|REF} + - HIStogram:SOUrce? + ``` + + Info: + - ``CH`` selects the analog channel waveform to use as the source for the histogram. + The x variable can be expressed as an integer ranging from 1 through 4. + - ``MATH`` selects the math waveform as the source for the histogram. + - ``REF`` selects a reference waveform as the source for the histogram. The x + variable can be expressed as an integer ranging from 1 through 4. + """ + return self._source + + @property + def start(self) -> HistogramStart: + """Return the ``HIStogram:STARt`` command. + + Description: + - Returns the time (horizontal) or vertical units value (vertical) of the first bin + where the histogram data starts. The ``HISTOGRAM:MODE`` must be either HORizontal or + VERTical for a value to be returned. If the mode is OFF, an error event is set and + nothing is returned. If the ``HISTOGRAM:MODE`` is HORizontal, the value returned is + the time of the left bin. If the ``HISTOGRAM:MODE`` is VERTical the value returned is + the vertical units value of the top bin. The returned value is an . + + Usage: + - Using the ``.query()`` method will send the ``HIStogram:STARt?`` query. + - Using the ``.verify(value)`` method will send the ``HIStogram:STARt?`` query and raise + an AssertionError if the returned value does not match ``value``. + + SCPI Syntax: + ``` + - HIStogram:STARt? + ``` + """ + return self._start diff --git a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/mark.py b/src/tm_devices/commands/gen_ujuvb_mdo/mark.py similarity index 96% rename from src/tm_devices/commands/gen_1ltpwt_mdomsodpo/mark.py rename to src/tm_devices/commands/gen_ujuvb_mdo/mark.py index 4dbc5bde..e9fb37fd 100644 --- a/src/tm_devices/commands/gen_1ltpwt_mdomsodpo/mark.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/mark.py @@ -2,7 +2,7 @@ """The mark commands module. These commands are used in the following models: -DPO4K, DPO4KB, MDO3, MDO3K, MDO4K, MDO4KB, MDO4KC, MSO4K, MSO4KB +MDO3 THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. @@ -11,8 +11,8 @@ Commands and Queries: ``` - MARK {NEXT|PREVious} - - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:CREATE {CH|MATH|REF|B|REF|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:DELEte {CH|MATH|REF|B|REF|DIGital|COLUMN|SELECTED|ALL|RF_AMPlitude|RF_FREQuency|RF_PHASe} - MARK:FREE? - MARK:SAVEALL TOUSER - MARK:SELected:END? @@ -504,7 +504,7 @@ class MarkDelete(SCPICmdWrite): SCPI Syntax: ``` - - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:DELEte {CH|MATH|REF|B|REF|DIGital|COLUMN|SELECTED|ALL|RF_AMPlitude|RF_FREQuency|RF_PHASe} ``` Info: @@ -530,7 +530,7 @@ class MarkCreate(SCPICmdWrite): SCPI Syntax: ``` - - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:CREATE {CH|MATH|REF|B|REF|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} ``` Info: @@ -600,7 +600,7 @@ def create(self) -> MarkCreate: SCPI Syntax: ``` - - MARK:CREATE {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:CREATE {CH|MATH|REF|B|REF|DIGital|COLUMN|RF_AMPlitude|RF_FREQuency|RF_PHASe} ``` Info: @@ -628,7 +628,7 @@ def delete(self) -> MarkDelete: SCPI Syntax: ``` - - MARK:DELEte {CH|MATH|REF1|REF2|REF3|REF4|B1|B2|B3|B4|REF1|REF2|REF3|REF4|DIGital|COLUMN|SELECTED|ALL||RF_AMPlitude|RF_FREQuency|RF_PHASe} + - MARK:DELEte {CH|MATH|REF|B|REF|DIGital|COLUMN|SELECTED|ALL|RF_AMPlitude|RF_FREQuency|RF_PHASe} ``` Info: diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/measurement.py b/src/tm_devices/commands/gen_ujuvb_mdo/measurement.py index 17c0133e..6b7d92b8 100644 --- a/src/tm_devices/commands/gen_ujuvb_mdo/measurement.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/measurement.py @@ -41,7 +41,7 @@ - MEASUrement:MEAS:MAXimum? - MEASUrement:MEAS:MEAN? - MEASUrement:MEAS:MINImum? - - MEASUrement:MEAS:SOUrce1 {CH|MATH|R|D} + - MEASUrement:MEAS:SOUrce1 {CH|MATH|REF|D} - MEASUrement:MEAS:SOUrce1? - MEASUrement:MEAS:STATE {ON|OFF|} - MEASUrement:MEAS:STATE? @@ -2295,7 +2295,7 @@ class MeasurementMeasItemSource1(SCPICmdWrite, SCPICmdRead): Description: - For SOURce1: This command specifies the source for all single channel measurements. For delay or phase measurements, This command specifies the waveform to measure 'from'. This - is equivalent to setting the 'From:' waveform in the 'Measure Delay' side menu or the + is equivalent to setting the 'From:' waveform in the 'Measure Delay' side menu or the 'Measure Phase' side menu. SOUrce is equivalent to SOURCE1. For SOUrce2: This command specifies the waveform to measure 'to' when taking a delay measurement or phase measurement. This is equivalent to setting the 'To:' waveform in the 'Measure Delay' side @@ -2311,18 +2311,16 @@ class MeasurementMeasItemSource1(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - MEASUrement:MEAS:SOUrce1 {CH|MATH|R|D} + - MEASUrement:MEAS:SOUrce1 {CH|MATH|REF|D} - MEASUrement:MEAS:SOUrce1? ``` Info: - - ``CH`` is an analog channel to use as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` is an analog channel to use as the source waveform. - ``MATH`` is the math waveform. - - ``REF`` is a reference waveform to use as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``REF`` is a reference waveform to use as the source waveform. - ``D`` is a digital channel to use as the source waveform. (Requires installation of - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ @@ -2717,12 +2715,12 @@ def source1(self) -> MeasurementMeasItemSource1: Description: - For SOURce1: This command specifies the source for all single channel measurements. For delay or phase measurements, This command specifies the waveform to measure - 'from'. This is equivalent to setting the 'From:' waveform in the 'Measure Delay' side - menu or the 'Measure Phase' side menu. SOUrce is equivalent to SOURCE1. For SOUrce2: - This command specifies the waveform to measure 'to' when taking a delay measurement or - phase measurement. This is equivalent to setting the 'To:' waveform in the 'Measure - Delay' side menu or the 'Measure Phase' side menu. Measurements are specified by , - which ranges from 1 to 8. + 'from'. This is equivalent to setting the 'From:' waveform in the 'Measure Delay' + side menu or the 'Measure Phase' side menu. SOUrce is equivalent to SOURCE1. For + SOUrce2: This command specifies the waveform to measure 'to' when taking a delay + measurement or phase measurement. This is equivalent to setting the 'To:' waveform in + the 'Measure Delay' side menu or the 'Measure Phase' side menu. Measurements are + specified by , which ranges from 1 to 8. Usage: - Using the ``.query()`` method will send the ``MEASUrement:MEAS:SOUrce1?`` query. @@ -2733,18 +2731,16 @@ def source1(self) -> MeasurementMeasItemSource1: SCPI Syntax: ``` - - MEASUrement:MEAS:SOUrce1 {CH|MATH|R|D} + - MEASUrement:MEAS:SOUrce1 {CH|MATH|REF|D} - MEASUrement:MEAS:SOUrce1? ``` Info: - - ``CH`` is an analog channel to use as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` is an analog channel to use as the source waveform. - ``MATH`` is the math waveform. - - ``REF`` is a reference waveform to use as the source waveform. x has a minimum of 1 - and a maximum of 4. + - ``REF`` is a reference waveform to use as the source waveform. - ``D`` is a digital channel to use as the source waveform. (Requires installation of - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ return self._source1 @@ -3401,10 +3397,9 @@ class MeasurementImmedSource1(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` is the analog channel to use as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` is the analog channel to use as the source waveform. - ``MATH`` is the math waveform. - - ``D0 - D15`` is the digital waveform to use as the source waveform. (On models with option + - ``D`` is the digital waveform to use as the source waveform. (On models with option 3-MSO installed.). - ``HIStogram`` indicates the histogram as the object to be measured. HIStogram only applies to SOUrce1; it is not available for SOUrce2. @@ -3641,11 +3636,10 @@ def source1(self) -> MeasurementImmedSource1: ``` Info: - - ``CH`` is the analog channel to use as the source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` is the analog channel to use as the source waveform. - ``MATH`` is the math waveform. - - ``D0 - D15`` is the digital waveform to use as the source waveform. (On models with - option 3-MSO installed.). + - ``D`` is the digital waveform to use as the source waveform. (On models with option + 3-MSO installed.). - ``HIStogram`` indicates the histogram as the object to be measured. HIStogram only applies to SOUrce1; it is not available for SOUrce2. """ # noqa: E501 diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/rf.py b/src/tm_devices/commands/gen_ujuvb_mdo/rf.py index 667f225a..acc51687 100644 --- a/src/tm_devices/commands/gen_ujuvb_mdo/rf.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/rf.py @@ -89,7 +89,7 @@ - RF:RF_AVErage:NUMAVg? - RF:RF_PHASe:WRAP:STATE - RF:RF_PHASe:WRAP:STATE? - - RF:RF_V_TIMe:BANDWidth + - RF:RF_V_TIMe:BANDWidth - RF:RF_V_TIMe:BANDWidth? - RF:SCAle - RF:SCAle? @@ -119,7 +119,7 @@ from typing import Optional, TYPE_CHECKING -from ..helpers import SCPICmdRead, SCPICmdReadWithArguments, SCPICmdWrite, SCPICmdWriteNoArguments +from ..helpers import SCPICmdRead, SCPICmdReadWithArguments, SCPICmdWrite if TYPE_CHECKING: from tm_devices.driver_mixins.device_control.pi_control import PIControl @@ -624,7 +624,7 @@ class RfScale(SCPICmdWrite, SCPICmdRead): """ -class RfRfVTimeBandwidth(SCPICmdWriteNoArguments, SCPICmdRead): +class RfRfVTimeBandwidth(SCPICmdWrite, SCPICmdRead): """The ``RF:RF_V_TIMe:BANDWidth`` command. Description: @@ -636,13 +636,16 @@ class RfRfVTimeBandwidth(SCPICmdWriteNoArguments, SCPICmdRead): - Using the ``.query()`` method will send the ``RF:RF_V_TIMe:BANDWidth?`` query. - Using the ``.verify(value)`` method will send the ``RF:RF_V_TIMe:BANDWidth?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the ``RF:RF_V_TIMe:BANDWidth`` command. + - Using the ``.write(value)`` method will send the ``RF:RF_V_TIMe:BANDWidth value`` command. SCPI Syntax: ``` - - RF:RF_V_TIMe:BANDWidth + - RF:RF_V_TIMe:BANDWidth - RF:RF_V_TIMe:BANDWidth? ``` + + Info: + - ```` is the RF versus time bandwidth. """ @@ -675,13 +678,17 @@ def bandwidth(self) -> RfRfVTimeBandwidth: - Using the ``.query()`` method will send the ``RF:RF_V_TIMe:BANDWidth?`` query. - Using the ``.verify(value)`` method will send the ``RF:RF_V_TIMe:BANDWidth?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the ``RF:RF_V_TIMe:BANDWidth`` command. + - Using the ``.write(value)`` method will send the ``RF:RF_V_TIMe:BANDWidth value`` + command. SCPI Syntax: ``` - - RF:RF_V_TIMe:BANDWidth + - RF:RF_V_TIMe:BANDWidth - RF:RF_V_TIMe:BANDWidth? ``` + + Info: + - ```` is the RF versus time bandwidth. """ return self._bandwidth diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/save.py b/src/tm_devices/commands/gen_ujuvb_mdo/save.py new file mode 100644 index 00000000..5faaa20d --- /dev/null +++ b/src/tm_devices/commands/gen_ujuvb_mdo/save.py @@ -0,0 +1,895 @@ +"""The save commands module. + +These commands are used in the following models: +MDO3 + +THIS FILE IS AUTO-GENERATED, IT SHOULD NOT BE MANUALLY MODIFIED. + +Please report an issue if one is found. + +Commands and Queries: + ``` + - SAVe:ASSIgn:TYPe {IMAGe|WAVEform|SETUp|UNASsigned} + - SAVe:ASSIgn:TYPe? + - SAVe:EVENTtable:B + - SAVe:EVENTtable:BUS + - SAVe:IMAGe + - SAVe:IMAGe:FILEFormat {PNG|BMP|TIFf} + - SAVe:IMAGe:FILEFormat? + - SAVe:IMAGe:INKSaver {OFF|ON|0|1} + - SAVe:IMAGe:INKSaver? + - SAVe:IMAGe:LAYout {LANdscape|PORTRait} + - SAVe:IMAGe:LAYout? + - SAVe:MASK + - SAVe:SETUp {|} + - SAVe:WAVEform , + - SAVe:WAVEform:FILEFormat {INTERNal|SPREADSheet} + - SAVe:WAVEform:FILEFormat:RF_BB_IQ {TIQ|MATLAB} + - SAVe:WAVEform:FILEFormat:RF_BB_IQ? + - SAVe:WAVEform:FILEFormat? + - SAVe:WAVEform:GATIng {NONe|CURSors|SCREEN} + - SAVe:WAVEform:GATIng? + ``` +""" + +from typing import Dict, Optional, TYPE_CHECKING + +from ..helpers import ( + DefaultDictPassKeyToFactory, + SCPICmdRead, + SCPICmdWrite, + ValidatedDynamicNumberCmd, +) + +if TYPE_CHECKING: + from tm_devices.driver_mixins.device_control.pi_control import PIControl + + +class SaveWaveformGating(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform:GATIng`` command. + + Description: + - Specifies whether save waveform operations should save the entire waveform (NONe) or a + specified portion of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:GATIng?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:GATIng?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:WAVEform:GATIng value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:GATIng {NONe|CURSors|SCREEN} + - SAVe:WAVEform:GATIng? + ``` + + Info: + - ``CURSors`` turns on cursors and the gates are the waveform record points at the cursor + positions. + - ``NONe`` saves the entire waveform. + - ``SCREEN`` , if zoom is on, the gates are the start and end waveform record points of the + zoom (upper) graticule, otherwise the gates are the start and end waveform record points + of the main graticule. + """ + + +class SaveWaveformFileformatRfBbIq(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform:FILEFormat:RF_BB_IQ`` command. + + Description: + - This command specifies the file format for saving the RF baseband I & Q data. The default + format is TIQ. See the description of the ``SAVE:WAVEFORM`` command for detailed + information about these formats. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:FILEFormat:RF_BB_IQ?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:FILEFormat:RF_BB_IQ?`` + query and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:WAVEform:FILEFormat:RF_BB_IQ value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:FILEFormat:RF_BB_IQ {TIQ|MATLAB} + - SAVe:WAVEform:FILEFormat:RF_BB_IQ? + ``` + + Info: + - ``TIQ`` specifies to use the TIQ file format for saving the RF baseband I & Q data. + - ``MATLAB`` specifies to use the MATLAB file format for saving the RF baseband I & Q data. + """ + + +class SaveWaveformFileformat(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform:FILEFormat`` command. + + Description: + - This command specifies the file format to be used when saving waveforms - either an + internal format, .ISF, or an external comma-delimited spreadsheet format, .CSV, that + includes waveform header and timing information. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:FILEFormat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:WAVEform:FILEFormat value`` + command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:FILEFormat {INTERNal|SPREADSheet} + - SAVe:WAVEform:FILEFormat? + ``` + + Info: + - ``INTERNal`` specifies to save waveforms using an internal format. The file name should be + specified with .ISF filename extension. These files can be recalled as reference + waveforms. + - ``SPREADSheet`` specifies that waveform data is saved in a format that contains comma + delimited values. These waveform data files should be named using the .CSV filename + extension. Saving waveforms in .CSV format enables spreadsheet programs to import the + data. + + Properties: + - ``.rf_bb_iq``: The ``SAVe:WAVEform:FILEFormat:RF_BB_IQ`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._rf_bb_iq = SaveWaveformFileformatRfBbIq(device, f"{self._cmd_syntax}:RF_BB_IQ") + + @property + def rf_bb_iq(self) -> SaveWaveformFileformatRfBbIq: + """Return the ``SAVe:WAVEform:FILEFormat:RF_BB_IQ`` command. + + Description: + - This command specifies the file format for saving the RF baseband I & Q data. The + default format is TIQ. See the description of the ``SAVE:WAVEFORM`` command for + detailed information about these formats. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:FILEFormat:RF_BB_IQ?`` + query. + - Using the ``.verify(value)`` method will send the + ``SAVe:WAVEform:FILEFormat:RF_BB_IQ?`` query and raise an AssertionError if the + returned value does not match ``value``. + - Using the ``.write(value)`` method will send the + ``SAVe:WAVEform:FILEFormat:RF_BB_IQ value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:FILEFormat:RF_BB_IQ {TIQ|MATLAB} + - SAVe:WAVEform:FILEFormat:RF_BB_IQ? + ``` + + Info: + - ``TIQ`` specifies to use the TIQ file format for saving the RF baseband I & Q data. + - ``MATLAB`` specifies to use the MATLAB file format for saving the RF baseband I & Q + data. + """ + return self._rf_bb_iq + + +class SaveWaveform(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:WAVEform`` command. + + Description: + - This command saves the specified waveform to the specified destination reference memory, + or saves the specified waveform(s) to the specified destination file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:WAVEform value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform , + ``` + + Info: + - ``CH`` - x has a minimum of 1 and a maximum of 4. + - ``D`` - x has a minimum of 0 and a maximum of 15. + - ``EMEM`` (instruments with the arbitrary waveform feature) - EMEM is the arbitrary + waveform edit memory. + - ``ARB`` is one of the internal arbitrary waveform storage locations. + - ``RF_NORMal, RF_AVErage, RF_MAXHold, RF_MINHold`` - These sources can be saved to REF1-4, + an ISF or CSV file. + - ``RF_BB_IQ`` - specifies to save baseband I & Q data. + - ``ALL`` - Specifies all displayed waveforms subject to the restrictions indicated in the + note below for saving ALL waveforms. + - ``REF`` - For saving a single scope waveform to one of the 4 internal reference + waveform memory storage locations (see descriptions for source waveforms above for which + waveforms can be saved to REF1-4). + - ``EMEM`` - For instruments with the arbitrary waveform feature, scope waveforms (CH1-4, + MATH, REF1-4, D0-D15) can be saved to arbitrary waveform edit memory. + - ``ARB`` - For instruments with the arbitrary waveform feature, EMEM can be saved to one + of the 4 internal arbitrary waveform memorylocations. + - ```` - Specifies the destination file path to save the specified waveform(s). + + Properties: + - ``.fileformat``: The ``SAVe:WAVEform:FILEFormat`` command. + - ``.gating``: The ``SAVe:WAVEform:GATIng`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fileformat = SaveWaveformFileformat(device, f"{self._cmd_syntax}:FILEFormat") + self._gating = SaveWaveformGating(device, f"{self._cmd_syntax}:GATIng") + + @property + def fileformat(self) -> SaveWaveformFileformat: + """Return the ``SAVe:WAVEform:FILEFormat`` command. + + Description: + - This command specifies the file format to be used when saving waveforms - either an + internal format, .ISF, or an external comma-delimited spreadsheet format, .CSV, that + includes waveform header and timing information. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:FILEFormat?`` query + and raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:WAVEform:FILEFormat value`` + command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:FILEFormat {INTERNal|SPREADSheet} + - SAVe:WAVEform:FILEFormat? + ``` + + Info: + - ``INTERNal`` specifies to save waveforms using an internal format. The file name + should be specified with .ISF filename extension. These files can be recalled as + reference waveforms. + - ``SPREADSheet`` specifies that waveform data is saved in a format that contains comma + delimited values. These waveform data files should be named using the .CSV filename + extension. Saving waveforms in .CSV format enables spreadsheet programs to import the + data. + + Sub-properties: + - ``.rf_bb_iq``: The ``SAVe:WAVEform:FILEFormat:RF_BB_IQ`` command. + """ + return self._fileformat + + @property + def gating(self) -> SaveWaveformGating: + """Return the ``SAVe:WAVEform:GATIng`` command. + + Description: + - Specifies whether save waveform operations should save the entire waveform (NONe) or a + specified portion of the waveform. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:WAVEform:GATIng?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:WAVEform:GATIng?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:WAVEform:GATIng value`` + command. + + SCPI Syntax: + ``` + - SAVe:WAVEform:GATIng {NONe|CURSors|SCREEN} + - SAVe:WAVEform:GATIng? + ``` + + Info: + - ``CURSors`` turns on cursors and the gates are the waveform record points at the + cursor positions. + - ``NONe`` saves the entire waveform. + - ``SCREEN`` , if zoom is on, the gates are the start and end waveform record points of + the zoom (upper) graticule, otherwise the gates are the start and end waveform record + points of the main graticule. + """ + return self._gating + + +class SaveSetup(SCPICmdWrite): + """The ``SAVe:SETUp`` command. + + Description: + - Stores the state of the oscilloscope to a specified memory location. You can later use the + ``*RCL`` command to restore the oscilloscope to this saved state. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:SETUp value`` command. + + SCPI Syntax: + ``` + - SAVe:SETUp {|} + ``` + + Info: + - ```` is the target location for storing the setup file. is a quoted + string that defines the file name and path. Input the file path using the form + ``:``/. and one or s are optional. If you do not + specify them, the oscilloscope will store the file in the current working directory. + stands for a filename. (Use of wildcard characters in filenames is not + supported.) Filename extensions are not required but are highly recommended. For setups, + use the extension '.SET'. + - ```` specifies a location for saving the current front-panel setup. The front-panel + setup value ranges from 1 to 10. Using an out-of-range value causes an execution error. + Any settings that have been stored previously at this location will be overwritten. + """ + + +class SaveMask(SCPICmdWrite): + """The ``SAVe:MASK`` command. + + Description: + - This command saves the current mask definition to the file specified with a quoted string, + into the current working directory. You can recall the mask from the file by using the + command ``RECALL:MASK A`` series of examples showing how to use mask commands for typical + tasks is included in an appendix. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:MASK value`` command. + + SCPI Syntax: + ``` + - SAVe:MASK + ``` + + Info: + - ``QString`` is a quoted string that is the name of the mask definition being saved to the + current working directory. + """ + + _WRAP_ARG_WITH_QUOTES = True + + +class SaveImageLayout(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe:LAYout`` command. + + Description: + - This command specifies the layout to use for saved screen images. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:LAYout?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:LAYout?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:LAYout value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:LAYout {LANdscape|PORTRait} + - SAVe:IMAGe:LAYout? + ``` + + Info: + - ``LANdscape`` specifies that screen images are saved in landscape format. + - ``PORTRait`` specifies that screen images are saved in portrait format. + """ + + +class SaveImageInksaver(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe:INKSaver`` command. + + Description: + - This command specifies the current ink saver setting for the ``SAVE:IMAGE`` command. If + set to 'ON' or '1', images will be generated using the ink saver palette. If set to 'OFF' + or '0', images will be generated using the standard palette. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:INKSaver?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:INKSaver?`` query and raise + an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:INKSaver value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:INKSaver {OFF|ON|0|1} + - SAVe:IMAGe:INKSaver? + ``` + + Info: + - ``OFF`` or 0 generates images from the Inksaver palette. + - ``ON`` or 1 generates images using the Standard palette. + """ + + +class SaveImageFileformat(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe:FILEFormat`` command. + + Description: + - This command specifies the file format to use for saving screen images. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:FILEFormat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:FILEFormat value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:FILEFormat {PNG|BMP|TIFf} + - SAVe:IMAGe:FILEFormat? + ``` + + Info: + - ``PNG`` saves the file in Portable Network Graphics format. + - ``BMP`` saves the file in Microsoft Windows bitmap format. + - ``TIFf`` saves the file in Tagged Image File Format. + """ + + +class SaveImage(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:IMAGe`` command. + + Description: + - Saves a capture of the screen image to the specified file. Supported image formats are + PNG, Windows Bitmap, and TIFF. The file format is specified by the + ``SAVE:IMAGE:FILEFORMAT`` command. The ``SAVE:IMAGE:INKSAVER`` command determines whether + the data is saved in InkSaver mode. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe + ``` + + Info: + - ```` is a filename, including path, where the image will be saved. If you do + not specify a directory, the oscilloscope will store the file in the current working + directory. File name extensions are not required but are highly recommended. + + Properties: + - ``.fileformat``: The ``SAVe:IMAGe:FILEFormat`` command. + - ``.inksaver``: The ``SAVe:IMAGe:INKSaver`` command. + - ``.layout``: The ``SAVe:IMAGe:LAYout`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._fileformat = SaveImageFileformat(device, f"{self._cmd_syntax}:FILEFormat") + self._inksaver = SaveImageInksaver(device, f"{self._cmd_syntax}:INKSaver") + self._layout = SaveImageLayout(device, f"{self._cmd_syntax}:LAYout") + + @property + def fileformat(self) -> SaveImageFileformat: + """Return the ``SAVe:IMAGe:FILEFormat`` command. + + Description: + - This command specifies the file format to use for saving screen images. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:FILEFormat?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:FILEFormat?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:FILEFormat value`` + command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:FILEFormat {PNG|BMP|TIFf} + - SAVe:IMAGe:FILEFormat? + ``` + + Info: + - ``PNG`` saves the file in Portable Network Graphics format. + - ``BMP`` saves the file in Microsoft Windows bitmap format. + - ``TIFf`` saves the file in Tagged Image File Format. + """ + return self._fileformat + + @property + def inksaver(self) -> SaveImageInksaver: + """Return the ``SAVe:IMAGe:INKSaver`` command. + + Description: + - This command specifies the current ink saver setting for the ``SAVE:IMAGE`` command. + If set to 'ON' or '1', images will be generated using the ink saver palette. If set to + 'OFF' or '0', images will be generated using the standard palette. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:INKSaver?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:INKSaver?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:INKSaver value`` + command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:INKSaver {OFF|ON|0|1} + - SAVe:IMAGe:INKSaver? + ``` + + Info: + - ``OFF`` or 0 generates images from the Inksaver palette. + - ``ON`` or 1 generates images using the Standard palette. + """ + return self._inksaver + + @property + def layout(self) -> SaveImageLayout: + """Return the ``SAVe:IMAGe:LAYout`` command. + + Description: + - This command specifies the layout to use for saved screen images. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:IMAGe:LAYout?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:IMAGe:LAYout?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe:LAYout value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe:LAYout {LANdscape|PORTRait} + - SAVe:IMAGe:LAYout? + ``` + + Info: + - ``LANdscape`` specifies that screen images are saved in landscape format. + - ``PORTRait`` specifies that screen images are saved in portrait format. + """ + return self._layout + + +class SaveEventtableBusItem(ValidatedDynamicNumberCmd, SCPICmdWrite): + """The ``SAVe:EVENTtable:BUS`` command. + + Description: + - Saves the data from bus to a specified file and location; where x is the bus number + (1-2). + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:BUS value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:BUS + ``` + + Info: + - ```` is a quoted string that defines the file name and path location where the + event table will be stored. + """ + + +class SaveEventtableBItem(ValidatedDynamicNumberCmd, SCPICmdWrite): + """The ``SAVe:EVENTtable:B`` command. + + Description: + - Saves the data from bus to a specified file and location; where x is the bus number + (1-2). + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:B value`` command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:B + ``` + + Info: + - ```` is a quoted string that defines the file name and path location where the + event table will be stored. + """ + + +class SaveEventtable(SCPICmdRead): + """The ``SAVe:EVENTtable`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:EVENTtable?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.bus``: The ``SAVe:EVENTtable:BUS`` command. + - ``.b``: The ``SAVe:EVENTtable:B`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._bus: Dict[int, SaveEventtableBusItem] = DefaultDictPassKeyToFactory( + lambda x: SaveEventtableBusItem(device, f"{self._cmd_syntax}:BUS{x}") + ) + self._b: Dict[int, SaveEventtableBItem] = DefaultDictPassKeyToFactory( + lambda x: SaveEventtableBItem(device, f"{self._cmd_syntax}:B{x}") + ) + + @property + def bus(self) -> Dict[int, SaveEventtableBusItem]: + """Return the ``SAVe:EVENTtable:BUS`` command. + + Description: + - Saves the data from bus to a specified file and location; where x is the bus number + (1-2). + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:BUS value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:BUS + ``` + + Info: + - ```` is a quoted string that defines the file name and path location where + the event table will be stored. + """ + return self._bus + + @property + def b(self) -> Dict[int, SaveEventtableBItem]: + """Return the ``SAVe:EVENTtable:B`` command. + + Description: + - Saves the data from bus to a specified file and location; where x is the bus number + (1-2). + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:EVENTtable:B value`` + command. + + SCPI Syntax: + ``` + - SAVe:EVENTtable:B + ``` + + Info: + - ```` is a quoted string that defines the file name and path location where + the event table will be stored. + """ + return self._b + + +class SaveAssignType(SCPICmdWrite, SCPICmdRead): + """The ``SAVe:ASSIgn:TYPe`` command. + + Description: + - This command specifies the assignment of the data to be saved when the front-panel Save + button is pressed. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:ASSIgn:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:ASSIgn:TYPe?`` query and raise an + AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:ASSIgn:TYPe value`` command. + + SCPI Syntax: + ``` + - SAVe:ASSIgn:TYPe {IMAGe|WAVEform|SETUp|UNASsigned} + - SAVe:ASSIgn:TYPe? + ``` + + Info: + - ``IMAGe`` assigns the Save button to save screen images. + - ``WAVEform`` assigns the Save button to save waveforms. + - ``SETUp`` assigns the Save button to save setups. + - ``UNASsigned`` sets the Save button to unassigned. + """ + + +class SaveAssign(SCPICmdRead): + """The ``SAVe:ASSIgn`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:ASSIgn?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:ASSIgn?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.type``: The ``SAVe:ASSIgn:TYPe`` command. + """ + + def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: + super().__init__(device, cmd_syntax) + self._type = SaveAssignType(device, f"{self._cmd_syntax}:TYPe") + + @property + def type(self) -> SaveAssignType: + """Return the ``SAVe:ASSIgn:TYPe`` command. + + Description: + - This command specifies the assignment of the data to be saved when the front-panel + Save button is pressed. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:ASSIgn:TYPe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:ASSIgn:TYPe?`` query and + raise an AssertionError if the returned value does not match ``value``. + - Using the ``.write(value)`` method will send the ``SAVe:ASSIgn:TYPe value`` command. + + SCPI Syntax: + ``` + - SAVe:ASSIgn:TYPe {IMAGe|WAVEform|SETUp|UNASsigned} + - SAVe:ASSIgn:TYPe? + ``` + + Info: + - ``IMAGe`` assigns the Save button to save screen images. + - ``WAVEform`` assigns the Save button to save waveforms. + - ``SETUp`` assigns the Save button to save setups. + - ``UNASsigned`` sets the Save button to unassigned. + """ + return self._type + + +class Save(SCPICmdRead): + """The ``SAVe`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVe?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Properties: + - ``.assign``: The ``SAVe:ASSIgn`` command tree. + - ``.eventtable``: The ``SAVe:EVENTtable`` command tree. + - ``.image``: The ``SAVe:IMAGe`` command. + - ``.mask``: The ``SAVe:MASK`` command. + - ``.setup``: The ``SAVe:SETUp`` command. + - ``.waveform``: The ``SAVe:WAVEform`` command. + """ + + def __init__(self, device: Optional["PIControl"] = None, cmd_syntax: str = "SAVe") -> None: + super().__init__(device, cmd_syntax) + self._assign = SaveAssign(device, f"{self._cmd_syntax}:ASSIgn") + self._eventtable = SaveEventtable(device, f"{self._cmd_syntax}:EVENTtable") + self._image = SaveImage(device, f"{self._cmd_syntax}:IMAGe") + self._mask = SaveMask(device, f"{self._cmd_syntax}:MASK") + self._setup = SaveSetup(device, f"{self._cmd_syntax}:SETUp") + self._waveform = SaveWaveform(device, f"{self._cmd_syntax}:WAVEform") + + @property + def assign(self) -> SaveAssign: + """Return the ``SAVe:ASSIgn`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:ASSIgn?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:ASSIgn?`` query and raise an + AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.type``: The ``SAVe:ASSIgn:TYPe`` command. + """ + return self._assign + + @property + def eventtable(self) -> SaveEventtable: + """Return the ``SAVe:EVENTtable`` command tree. + + Usage: + - Using the ``.query()`` method will send the ``SAVe:EVENTtable?`` query. + - Using the ``.verify(value)`` method will send the ``SAVe:EVENTtable?`` query and raise + an AssertionError if the returned value does not match ``value``. + + Sub-properties: + - ``.bus``: The ``SAVe:EVENTtable:BUS`` command. + - ``.b``: The ``SAVe:EVENTtable:B`` command. + """ + return self._eventtable + + @property + def image(self) -> SaveImage: + """Return the ``SAVe:IMAGe`` command. + + Description: + - Saves a capture of the screen image to the specified file. Supported image formats are + PNG, Windows Bitmap, and TIFF. The file format is specified by the + ``SAVE:IMAGE:FILEFORMAT`` command. The ``SAVE:IMAGE:INKSAVER`` command determines + whether the data is saved in InkSaver mode. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:IMAGe value`` command. + + SCPI Syntax: + ``` + - SAVe:IMAGe + ``` + + Info: + - ```` is a filename, including path, where the image will be saved. If you + do not specify a directory, the oscilloscope will store the file in the current + working directory. File name extensions are not required but are highly recommended. + + Sub-properties: + - ``.fileformat``: The ``SAVe:IMAGe:FILEFormat`` command. + - ``.inksaver``: The ``SAVe:IMAGe:INKSaver`` command. + - ``.layout``: The ``SAVe:IMAGe:LAYout`` command. + """ + return self._image + + @property + def mask(self) -> SaveMask: + """Return the ``SAVe:MASK`` command. + + Description: + - This command saves the current mask definition to the file specified with a quoted + string, into the current working directory. You can recall the mask from the file by + using the command ``RECALL:MASK A`` series of examples showing how to use mask + commands for typical tasks is included in an appendix. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:MASK value`` command. + + SCPI Syntax: + ``` + - SAVe:MASK + ``` + + Info: + - ``QString`` is a quoted string that is the name of the mask definition being saved to + the current working directory. + """ + return self._mask + + @property + def setup(self) -> SaveSetup: + """Return the ``SAVe:SETUp`` command. + + Description: + - Stores the state of the oscilloscope to a specified memory location. You can later use + the ``*RCL`` command to restore the oscilloscope to this saved state. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:SETUp value`` command. + + SCPI Syntax: + ``` + - SAVe:SETUp {|} + ``` + + Info: + - ```` is the target location for storing the setup file. is a + quoted string that defines the file name and path. Input the file path using the form + ``:``/. and one or s are optional. If you do + not specify them, the oscilloscope will store the file in the current working + directory. stands for a filename. (Use of wildcard characters in filenames + is not supported.) Filename extensions are not required but are highly recommended. + For setups, use the extension '.SET'. + - ```` specifies a location for saving the current front-panel setup. The + front-panel setup value ranges from 1 to 10. Using an out-of-range value causes an + execution error. Any settings that have been stored previously at this location will + be overwritten. + """ + return self._setup + + @property + def waveform(self) -> SaveWaveform: + """Return the ``SAVe:WAVEform`` command. + + Description: + - This command saves the specified waveform to the specified destination reference + memory, or saves the specified waveform(s) to the specified destination file. + + Usage: + - Using the ``.write(value)`` method will send the ``SAVe:WAVEform value`` command. + + SCPI Syntax: + ``` + - SAVe:WAVEform , + ``` + + Info: + - ``CH`` - x has a minimum of 1 and a maximum of 4. + - ``D`` - x has a minimum of 0 and a maximum of 15. + - ``EMEM`` (instruments with the arbitrary waveform feature) - EMEM is the arbitrary + waveform edit memory. + - ``ARB`` is one of the internal arbitrary waveform storage locations. + - ``RF_NORMal, RF_AVErage, RF_MAXHold, RF_MINHold`` - These sources can be saved to + REF1-4, an ISF or CSV file. + - ``RF_BB_IQ`` - specifies to save baseband I & Q data. + - ``ALL`` - Specifies all displayed waveforms subject to the restrictions indicated in + the note below for saving ALL waveforms. + - ``REF`` - For saving a single scope waveform to one of the 4 internal reference + waveform memory storage locations (see descriptions for source waveforms above for + which waveforms can be saved to REF1-4). + - ``EMEM`` - For instruments with the arbitrary waveform feature, scope waveforms + (CH1-4, MATH, REF1-4, D0-D15) can be saved to arbitrary waveform edit memory. + - ``ARB`` - For instruments with the arbitrary waveform feature, EMEM can be saved to + one of the 4 internal arbitrary waveform memorylocations. + - ```` - Specifies the destination file path to save the specified + waveform(s). + + Sub-properties: + - ``.fileformat``: The ``SAVe:WAVEform:FILEFormat`` command. + - ``.gating``: The ``SAVe:WAVEform:GATIng`` command. + """ + return self._waveform diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/search.py b/src/tm_devices/commands/gen_ujuvb_mdo/search.py index 74f5902e..1c098eeb 100644 --- a/src/tm_devices/commands/gen_ujuvb_mdo/search.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/search.py @@ -57,7 +57,7 @@ - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:DIRection? - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:OFFSet - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:OFFSet? - - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual} + - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|EQual} - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier? - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:SIZe? @@ -201,13 +201,13 @@ - SEARCH:SEARCH:TRIGger:A:BUS:B:PARallel:VALue? - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:CONDition {RXSTArt|RXDATA|RXENDPacket|TXSTArt|TXDATA|TXENDPacket} - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:CONDition? - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe? - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue? - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe? - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue? - SEARCH:SEARCH:TRIGger:A:BUS:B:SPI:CONDition {SS|STARTofframe|MISO|MOSI|MISOMOSI} - SEARCH:SEARCH:TRIGger:A:BUS:B:SPI:CONDition? @@ -280,7 +280,7 @@ - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CH? - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:EDGE {FALL|RISe} - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:EDGE? - - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce {CH|MATH|REF|NONe|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce {CH|MATH|REF|NONe|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce? - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:D {HIGH|LOW|X} - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:D? @@ -338,7 +338,7 @@ - SEARCH:SEARCH:TRIGger:A:RUNT:WIDth? - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE {FALL|RISe} - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:EDGE? - - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {CH|MATH|REF1|REF3|REF3|REF4|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {CH|MATH|REF|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce? - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold {|TTL|ECL} - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:THReshold? @@ -358,7 +358,7 @@ - SEARCH:SEARCH:TRIGger:A:SETHold:THReshold:REF? - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? @@ -388,7 +388,6 @@ DefaultDictPassKeyToFactory, SCPICmdRead, SCPICmdWrite, - SCPICmdWriteNoArguments, ValidatedChannel, ValidatedDigitalBit, ValidatedDynamicNumberCmd, @@ -712,9 +711,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -892,9 +891,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -981,18 +980,17 @@ class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? ``` Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies to use one of the analog channels as the source waveform. - ``MATH`` specifies to use the math waveform as the as the source waveform. - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. + waveform. - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). """ # noqa: E501 @@ -1096,18 +1094,17 @@ def source(self) -> SearchSearchItemTriggerATimeoutSource: SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? ``` Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies to use one of the analog channels as the source waveform. - ``MATH`` specifies to use the math waveform as the as the source waveform. - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. + waveform. - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + (Requires option 3-MSO.). """ # noqa: E501 return self._source @@ -1453,13 +1450,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1474,8 +1469,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1516,13 +1510,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1603,18 +1595,15 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {CH|MATH|REF1|REF3|REF3|REF4|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {CH|MATH|REF|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce? ``` Info: - - ``CH`` specifies an analog channel as the clock source waveform. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the clock source waveform. - ``MATH`` specifies the math waveform as the clock source waveform. - - ``REF`` specifies a reference waveform as the clock source waveform. x has a minimum of - 1 and a maximum of 4. - - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 - and a maximum of 15. + - ``REF`` specifies a reference waveform as the clock source waveform. + - ``D`` specifies a digital channel as the clock source waveform. """ # noqa: E501 @@ -1720,18 +1709,15 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {CH|MATH|REF1|REF3|REF3|REF4|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce {CH|MATH|REF|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:SETHold:CLOCk:SOUrce? ``` Info: - - ``CH`` specifies an analog channel as the clock source waveform. x has a minimum of - 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the clock source waveform. - ``MATH`` specifies the math waveform as the clock source waveform. - - ``REF`` specifies a reference waveform as the clock source waveform. x has a - minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of - 0 and a maximum of 15. + - ``REF`` specifies a reference waveform as the clock source waveform. + - ``D`` specifies a digital channel as the clock source waveform. """ # noqa: E501 return self._source @@ -1826,8 +1812,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1998,11 +1983,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2119,11 +2102,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2252,9 +2233,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2429,9 +2410,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -2563,13 +2544,10 @@ class SearchSearchItemTriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ @@ -2804,13 +2782,10 @@ def source(self) -> SearchSearchItemTriggerAPulsewidthSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ return self._source @@ -3757,18 +3732,16 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce {CH|MATH|REF|NONe|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce {CH|MATH|REF|NONe|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce? ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the clock source. - ``MATH`` specifies the math waveform as the clock source. - - ``REF`` specifies the reference waveform as the clock source. + - ``REF`` specifies the reference waveform as the clock source. - ``NONe`` specifies no clock source. - - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the clock source. """ # noqa: E501 @@ -3873,18 +3846,16 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce {CH|MATH|REF|NONe|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} + - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce {CH|MATH|REF|NONe|D|RF_AMPlitude|RF_FREQuency|RF_PHASe} - SEARCH:SEARCH:TRIGger:A:LOGIc:INPut:CLOCk:SOUrce? ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the clock source. - ``MATH`` specifies the math waveform as the clock source. - - ``REF`` specifies the reference waveform as the clock source. + - ``REF`` specifies the reference waveform as the clock source. - ``NONe`` specifies no clock source. - - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the clock source. """ # noqa: E501 return self._source @@ -4474,13 +4445,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -4585,13 +4553,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -6870,7 +6835,7 @@ def data(self) -> SearchSearchItemTriggerABusBItemSpiData: return self._data -class SearchSearchItemTriggerABusBItemRs232cTxDataValue(SCPICmdWriteNoArguments, SCPICmdRead): +class SearchSearchItemTriggerABusBItemRs232cTxDataValue(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue`` command. Description: @@ -6883,24 +6848,29 @@ class SearchSearchItemTriggerABusBItemRs232cTxDataValue(SCPICmdWriteNoArguments, - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue? ``` + + Info: + - ```` is the binary data string. """ + _WRAP_ARG_WITH_QUOTES = True + -class SearchSearchItemTriggerABusBItemRs232cTxDataSize(SCPICmdWriteNoArguments, SCPICmdRead): +class SearchSearchItemTriggerABusBItemRs232cTxDataSize(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe`` command. Description: - This command specifies the length of the data string to be used for an RS-232 search if the search condition is set to TXDATA. SEARCH is the search number, which is always 1, - and B + and B. Usage: - Using the ``.query()`` method will send the @@ -6908,12 +6878,12 @@ class SearchSearchItemTriggerABusBItemRs232cTxDataSize(SCPICmdWriteNoArguments, - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe? ``` @@ -6953,7 +6923,7 @@ def size(self) -> SearchSearchItemTriggerABusBItemRs232cTxDataSize: Description: - This command specifies the length of the data string to be used for an RS-232 search if the search condition is set to TXDATA. SEARCH is the search number, which is - always 1, and B + always 1, and B. Usage: - Using the ``.query()`` method will send the @@ -6961,12 +6931,12 @@ def size(self) -> SearchSearchItemTriggerABusBItemRs232cTxDataSize: - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe? ``` @@ -6990,14 +6960,17 @@ def value(self) -> SearchSearchItemTriggerABusBItemRs232cTxDataValue: - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:TX:DATa:VALue? ``` + + Info: + - ```` is the binary data string. """ return self._value @@ -7040,12 +7013,12 @@ def data(self) -> SearchSearchItemTriggerABusBItemRs232cTxData: return self._data -class SearchSearchItemTriggerABusBItemRs232cRxDataValue(SCPICmdWriteNoArguments, SCPICmdRead): +class SearchSearchItemTriggerABusBItemRs232cRxDataValue(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue`` command. Description: - This command specifies the data value to be used in an RS-232 search, if the condition is - set to RXDATA. SEARCH is the search number, which is always 1, and B + set to RXDATA. SEARCH is the search number, which is always 1, and B. Usage: - Using the ``.query()`` method will send the @@ -7053,18 +7026,23 @@ class SearchSearchItemTriggerABusBItemRs232cRxDataValue(SCPICmdWriteNoArguments, - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue? ``` + + Info: + - ```` is the binary data string. """ + _WRAP_ARG_WITH_QUOTES = True + -class SearchSearchItemTriggerABusBItemRs232cRxDataSize(SCPICmdWriteNoArguments, SCPICmdRead): +class SearchSearchItemTriggerABusBItemRs232cRxDataSize(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe`` command. Description: @@ -7078,12 +7056,12 @@ class SearchSearchItemTriggerABusBItemRs232cRxDataSize(SCPICmdWriteNoArguments, - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe? ``` @@ -7131,12 +7109,12 @@ def size(self) -> SearchSearchItemTriggerABusBItemRs232cRxDataSize: - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe? ``` @@ -7151,7 +7129,7 @@ def value(self) -> SearchSearchItemTriggerABusBItemRs232cRxDataValue: Description: - This command specifies the data value to be used in an RS-232 search, if the condition - is set to RXDATA. SEARCH is the search number, which is always 1, and B + is set to RXDATA. SEARCH is the search number, which is always 1, and B. Usage: - Using the ``.query()`` method will send the @@ -7159,14 +7137,17 @@ def value(self) -> SearchSearchItemTriggerABusBItemRs232cRxDataValue: - Using the ``.verify(value)`` method will send the ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue`` command. + - Using the ``.write(value)`` method will send the + ``SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue value`` command. SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue + - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue - SEARCH:SEARCH:TRIGger:A:BUS:B:RS232C:RX:DATa:VALue? ``` + + Info: + - ```` is the binary data string. """ return self._value @@ -12838,7 +12819,7 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual} + - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|EQual} - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier? ``` @@ -12853,6 +12834,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:DATA:VALUE``. - ``LESSEQual`` searches for bus data less equal to the value specified by ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:DATA:VALUE``. + - ``EQual`` searches for bus data equal to the value specified by + ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:DATA:VALUE``. """ # noqa: E501 @@ -13033,7 +13016,7 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: SCPI Syntax: ``` - - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual} + - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier {LESSthan|MOREthan|EQual|UNEQual|LESSEQual|EQual} - SEARCH:SEARCH:TRIGger:A:BUS:B:CAN:DATa:QUALifier? ``` @@ -13048,6 +13031,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:DATA:VALUE``. - ``LESSEQual`` searches for bus data less equal to the value specified by ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:DATA:VALUE``. + - ``EQual`` searches for bus data equal to the value specified by + ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:DATA:VALUE``. """ # noqa: E501 return self._qualifier diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/select.py b/src/tm_devices/commands/gen_ujuvb_mdo/select.py index 2582ce6f..914f2ae9 100644 --- a/src/tm_devices/commands/gen_ujuvb_mdo/select.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/select.py @@ -306,13 +306,12 @@ class SelectControl(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies a channel waveform as the waveform affected by the front-panel - controls. x has a minimum of 1 and a maximum of 4. + controls. - ``MATH`` specifies the math waveform as the waveform that is affected by the front-panel controls. - ``BUS`` specifies a bus waveform as the waveform affected by the front-panel controls. - x has a minimum of 1 and a maximum of 4. - ``D`` specifies a digital waveform as the waveform affected by the front-panel - controls. (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + controls. (Requires option 3-MSO.). - ``RF_NORMal`` specify an RF trace as the waveform affected by the front-panel controls. - ``RF_AVErage`` specify an RF trace as the waveform affected by the front-panel controls. - ``RF_MAXHold`` specify an RF trace as the waveform affected by the front-panel controls. @@ -515,13 +514,13 @@ def control(self) -> SelectControl: Info: - ``CH`` specifies a channel waveform as the waveform affected by the front-panel - controls. x has a minimum of 1 and a maximum of 4. + controls. - ``MATH`` specifies the math waveform as the waveform that is affected by the front-panel controls. - ``BUS`` specifies a bus waveform as the waveform affected by the front-panel - controls. x has a minimum of 1 and a maximum of 4. + controls. - ``D`` specifies a digital waveform as the waveform affected by the front-panel - controls. (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. + controls. (Requires option 3-MSO.). - ``RF_NORMal`` specify an RF trace as the waveform affected by the front-panel controls. - ``RF_AVErage`` specify an RF trace as the waveform affected by the front-panel diff --git a/src/tm_devices/commands/gen_ujuvb_mdo/trigger.py b/src/tm_devices/commands/gen_ujuvb_mdo/trigger.py index 55a22bc2..e8dec336 100644 --- a/src/tm_devices/commands/gen_ujuvb_mdo/trigger.py +++ b/src/tm_devices/commands/gen_ujuvb_mdo/trigger.py @@ -200,11 +200,11 @@ - TRIGger:A:BUS:B:RS232C:CONDition? - TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe - TRIGger:A:BUS:B:RS232C:RX:DATa:SIZe? - - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue + - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue? - TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe - TRIGger:A:BUS:B:RS232C:TX:DATa:SIZe? - - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue + - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue? - TRIGger:A:BUS:B:SPI:CONDition {SS|STARTofframe|MISO|MOSI|MISOMOSI} - TRIGger:A:BUS:B:SPI:CONDition? @@ -439,7 +439,6 @@ DefaultDictPassKeyToFactory, SCPICmdRead, SCPICmdWrite, - SCPICmdWriteNoArguments, ValidatedChannel, ValidatedDigitalBit, ValidatedDynamicNumberCmd, @@ -1063,8 +1062,7 @@ class TriggerBEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -1225,8 +1223,7 @@ def source(self) -> TriggerBEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -2086,7 +2083,7 @@ class TriggerATransitionSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -2250,7 +2247,7 @@ def source(self) -> TriggerATransitionSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -2337,13 +2334,12 @@ class TriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -2452,13 +2448,12 @@ def source(self) -> TriggerATimeoutSource: ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -2733,9 +2728,8 @@ class TriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a minimum - of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -2793,9 +2787,8 @@ def source(self) -> TriggerASetholdDataSource: Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a - minimum of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -2877,10 +2870,9 @@ class TriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -2989,10 +2981,9 @@ def source(self) -> TriggerASetholdClockSource: ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3493,7 +3484,7 @@ class TriggerARisefallSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -3657,7 +3648,7 @@ def source(self) -> TriggerARisefallSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -3889,13 +3880,11 @@ class TriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ @@ -4109,13 +4098,11 @@ def source(self) -> TriggerAPulsewidthSource: ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ return self._source @@ -4837,10 +4824,8 @@ class TriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x has a - minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ @@ -4941,10 +4926,8 @@ def source(self) -> TriggerALogicInputClockSource: ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ return self._source @@ -5665,10 +5648,8 @@ class TriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a minimum - of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog input channel as the A edge trigger source. + - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - ``LINE`` specifies the AC power line as the trigger source. """ @@ -5843,10 +5824,8 @@ def source(self) -> TriggerAEdgeSource: Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the A edge trigger source. - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - x has a minimum of 0 and a maximum of 15. - ``LINE`` specifies the AC power line as the trigger source. """ return self._source @@ -7864,7 +7843,7 @@ def data(self) -> TriggerABusBItemSpiData: return self._data -class TriggerABusBItemRs232cTxDataValue(SCPICmdWriteNoArguments, SCPICmdRead): +class TriggerABusBItemRs232cTxDataValue(SCPICmdWrite, SCPICmdRead): """The ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue`` command. Description: @@ -7877,12 +7856,12 @@ class TriggerABusBItemRs232cTxDataValue(SCPICmdWriteNoArguments, SCPICmdRead): - Using the ``.verify(value)`` method will send the ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue`` - command. + - Using the ``.write(value)`` method will send the + ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue value`` command. SCPI Syntax: ``` - - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue + - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue? ``` @@ -7978,12 +7957,12 @@ def value(self) -> TriggerABusBItemRs232cTxDataValue: - Using the ``.verify(value)`` method will send the ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue`` command. + - Using the ``.write(value)`` method will send the + ``TRIGger:A:BUS:B:RS232C:TX:DATa:VALue value`` command. SCPI Syntax: ``` - - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue + - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue - TRIGger:A:BUS:B:RS232C:TX:DATa:VALue? ``` @@ -8027,7 +8006,7 @@ def data(self) -> TriggerABusBItemRs232cTxData: return self._data -class TriggerABusBItemRs232cRxDataValue(SCPICmdWriteNoArguments, SCPICmdRead): +class TriggerABusBItemRs232cRxDataValue(SCPICmdWrite, SCPICmdRead): """The ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue`` command. Description: @@ -8040,12 +8019,12 @@ class TriggerABusBItemRs232cRxDataValue(SCPICmdWriteNoArguments, SCPICmdRead): - Using the ``.verify(value)`` method will send the ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue`` - command. + - Using the ``.write(value)`` method will send the + ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue value`` command. SCPI Syntax: ``` - - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue + - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue? ``` @@ -8141,12 +8120,12 @@ def value(self) -> TriggerABusBItemRs232cRxDataValue: - Using the ``.verify(value)`` method will send the ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue?`` query and raise an AssertionError if the returned value does not match ``value``. - - Using the ``.write()`` method will send the - ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue`` command. + - Using the ``.write(value)`` method will send the + ``TRIGger:A:BUS:B:RS232C:RX:DATa:VALue value`` command. SCPI Syntax: ``` - - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue + - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue - TRIGger:A:BUS:B:RS232C:RX:DATa:VALue? ``` diff --git a/src/tm_devices/commands/gen_usaa3_mdo/search.py b/src/tm_devices/commands/gen_usaa3_mdo/search.py index e8d497a4..a726fea4 100644 --- a/src/tm_devices/commands/gen_usaa3_mdo/search.py +++ b/src/tm_devices/commands/gen_usaa3_mdo/search.py @@ -368,8 +368,6 @@ - SEARCH:SEARCH:TRIGger:A:SETHold:THReshold:REF? - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity {STAYSHigh|STAYSLow|EITher} - SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity? - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe - SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe? - SEARCH:SEARCH:TRIGger:A:TRANsition:DELTatime @@ -722,9 +720,9 @@ class SearchSearchItemTriggerATransitionSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -902,9 +900,9 @@ def source(self) -> SearchSearchItemTriggerATransitionSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -971,41 +969,6 @@ class SearchSearchItemTriggerATimeoutTime(SCPICmdWrite, SCPICmdRead): """ -class SearchSearchItemTriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): - """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - - Description: - - When searching using the TIMEOut search type, this command specifies the source. The - available sources are live channels, reference waveforms, the math waveform, or the - digital channels. The default is channel 1. The timeout search type is selected using - ``SEARCH:SEARCHX:TRIGGER:A:TYPE``. SEARCH is the search number, which is always 1. - - Usage: - - Using the ``.query()`` method will send the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` - query. - - Using the ``.verify(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query and raise an AssertionError if the - returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce value`` command. - - SCPI Syntax: - ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - ``` - - Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` specifies to use the math waveform as the as the source waveform. - - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. - """ # noqa: E501 - - class SearchSearchItemTriggerATimeoutPolarity(SCPICmdWrite, SCPICmdRead): """The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. @@ -1044,7 +1007,6 @@ class SearchSearchItemTriggerATimeout(SCPICmdRead): Properties: - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. - - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. """ @@ -1053,7 +1015,6 @@ def __init__(self, device: Optional["PIControl"], cmd_syntax: str) -> None: self._polarity = SearchSearchItemTriggerATimeoutPolarity( device, f"{self._cmd_syntax}:POLarity" ) - self._source = SearchSearchItemTriggerATimeoutSource(device, f"{self._cmd_syntax}:SOUrce") self._time = SearchSearchItemTriggerATimeoutTime(device, f"{self._cmd_syntax}:TIMe") @property @@ -1085,42 +1046,6 @@ def polarity(self) -> SearchSearchItemTriggerATimeoutPolarity: """ return self._polarity - @property - def source(self) -> SearchSearchItemTriggerATimeoutSource: - """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - - Description: - - When searching using the TIMEOut search type, this command specifies the source. The - available sources are live channels, reference waveforms, the math waveform, or the - digital channels. The default is channel 1. The timeout search type is selected using - ``SEARCH:SEARCHX:TRIGGER:A:TYPE``. SEARCH is the search number, which is always 1. - - Usage: - - Using the ``.query()`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query. - - Using the ``.verify(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce?`` query and raise an AssertionError if - the returned value does not match ``value``. - - Using the ``.write(value)`` method will send the - ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce value`` command. - - SCPI Syntax: - ``` - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce {CH|MATH|REF|D0|D1|D2|D3|D4|D5|D6|D7|D8|D9|D10|D11|D12|D13|D14|D15|RF_AMPlitude|RF_FREQuency|RF_PHASe} - - SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce? - ``` - - Info: - - ``CH`` specifies to use one of the analog channels as the source waveform. x has a - minimum of 1 and a maximum of 4. - - ``MATH`` specifies to use the math waveform as the as the source waveform. - - ``REF`` specifies to use one of the reference waveforms 1-4 as the as the source - waveform. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies to use one of the digital channels as the source waveform. - (Requires option 3-MSO.) x has a minimum of 0 and a maximum of 15. - """ # noqa: E501 - return self._source - @property def time(self) -> SearchSearchItemTriggerATimeoutTime: """Return the ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. @@ -1463,13 +1388,11 @@ class SearchSearchItemTriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and a - maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 @@ -1484,8 +1407,7 @@ class SearchSearchItemTriggerASetholdData(SCPICmdRead): returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -1526,13 +1448,11 @@ def source(self) -> SearchSearchItemTriggerASetholdDataSource: ``` Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. - ``MATH`` specifies the math waveform as the data source. - - ``REF`` specifies a reference waveform as the data source. x has a minimum of 1 and - a maximum of 4. + - ``REF`` specifies a reference waveform as the data source. - ``D`` specifies a digital input as the data source (models with option 3-MSO - installed.) x has a minimum of 0 and a maximum of 15. + installed.). """ # noqa: E501 return self._source @@ -1625,6 +1545,12 @@ class SearchSearchItemTriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. (MDO4000/B/C + only.). """ # noqa: E501 @@ -1742,6 +1668,12 @@ def source(self) -> SearchSearchItemTriggerASetholdClockSource: minimum of 1 and a maximum of 4. - ``D`` specifies a digital channel as the clock source waveform. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_FREQuency`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). + - ``RF_PHASe`` specifies an RF time domain trace as the clock source waveform. + (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -1836,8 +1768,7 @@ def data(self) -> SearchSearchItemTriggerASetholdData: returned value does not match ``value``. Info: - - ``CH`` specifies an analog channel as the data source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the data source. Sub-properties: - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:SETHold:DATa:SOUrce`` command. @@ -2008,11 +1939,9 @@ class SearchSearchItemTriggerARuntSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 @@ -2129,11 +2058,9 @@ def source(self) -> SearchSearchItemTriggerARuntSource: ``` Info: - - ``CH`` specifies an analog channel as the runt search source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the runt search source. - ``MATH`` specifies the math waveform as the runt search source. - - ``REF`` specifies a reference waveform as the runt search source. x has a minimum - of 1 and a maximum of 4. + - ``REF`` specifies a reference waveform as the runt search source. """ # noqa: E501 return self._source @@ -2262,9 +2189,9 @@ class SearchSearchItemTriggerARisefallSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a maximum of - 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 @@ -2439,9 +2366,9 @@ def source(self) -> SearchSearchItemTriggerARisefallSource: ``` Info: - - ``CH`` specifies one input channel as the source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies one input channel as the source. - ``MATH`` specifies the math waveform as the source. + - ``REF`` specifies the reference waveform as the source. """ # noqa: E501 return self._source @@ -3920,6 +3847,9 @@ class SearchSearchItemTriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 @@ -4036,6 +3966,11 @@ def source(self) -> SearchSearchItemTriggerALogicInputClockSource: - ``NONe`` specifies no clock source. - ``D`` specifies a digital channel as the clock source. x has a minimum of 0 and a maximum of 15. + - ``RF_AMPlitude`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_FREQuency`` specify an RF time domain trace as the clock source. (MDO4000/B/C + only.). + - ``RF_PHASe`` specify an RF time domain trace as the clock source. (MDO4000/B/C only.). """ # noqa: E501 return self._source @@ -4820,13 +4755,10 @@ class SearchSearchItemTriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 and - a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and a - maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 @@ -4931,13 +4863,10 @@ def source(self) -> SearchSearchItemTriggerAEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the source waveform. x has a minimum of 1 and - a maximum of 4. + - ``CH`` specifies an analog channel as the source waveform. - ``MATH`` specifies the math waveform as the source waveform. - - ``REF`` specifies a reference waveform as the source waveform. x has a minimum of 1 - and a maximum of 4. - - ``D`` specifies a digital channel as the source waveform. x has a minimum of 0 and - a maximum of 15. + - ``REF`` specifies a reference waveform as the source waveform. + - ``D`` specifies a digital channel as the source waveform. """ # noqa: E501 return self._source @@ -13092,7 +13021,8 @@ class SearchSearchItemTriggerABusBItemCanDataQualifier(SCPICmdWrite, SCPICmdRead - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search number, which - is always 1, and B is the bus number (1-2). + is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and 1-2 for the + MDO3000. Usage: - Using the ``.query()`` method will send the @@ -13287,7 +13217,8 @@ def qualifier(self) -> SearchSearchItemTriggerABusBItemCanDataQualifier: - This command sets the qualifier (<, >, =, not =, <=) to be used to search on CAN bus data. This only applies if the search condition has been set to IDANDDATA or DATA (using ``SEARCH:SEARCHX:TRIGGER:A:BUS:BX:CAN:CONDITION``). SEARCH is the search - number, which is always 1, and B is the bus number (1-2). + number, which is always 1, and B is the bus number (1-4). 1-3 for the MDO4000C and + 1-2 for the MDO3000. Usage: - Using the ``.query()`` method will send the @@ -15569,7 +15500,6 @@ def timeout(self) -> SearchSearchItemTriggerATimeout: Sub-properties: - ``.polarity``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:POLarity`` command. - - ``.source``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:SOUrce`` command. - ``.time``: The ``SEARCH:SEARCH:TRIGger:A:TIMEOut:TIMe`` command. """ return self._timeout diff --git a/src/tm_devices/commands/gen_usaa3_mdo/trigger.py b/src/tm_devices/commands/gen_usaa3_mdo/trigger.py index 378a83e8..11c56ffe 100644 --- a/src/tm_devices/commands/gen_usaa3_mdo/trigger.py +++ b/src/tm_devices/commands/gen_usaa3_mdo/trigger.py @@ -1085,8 +1085,7 @@ class TriggerBEdgeSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 and a - maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -1247,8 +1246,7 @@ def source(self) -> TriggerBEdgeSource: ``` Info: - - ``CH`` specifies an analog channel as the B trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the B trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope as the B trigger source. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC power line as the B trigger source. @@ -2555,7 +2553,7 @@ class TriggerATransitionSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -2719,7 +2717,7 @@ def source(self) -> TriggerATransitionSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -2806,13 +2804,12 @@ class TriggerATimeoutSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum of 1 - and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ @@ -2921,13 +2918,12 @@ def source(self) -> TriggerATimeoutSource: ``` Info: - - ``CH`` specifies an analog channel as the timeout trigger source. x has a minimum - of 1 and a maximum of 4. + - ``CH`` specifies an analog channel as the timeout trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - ``LINE`` specifies the AC line as the timeout trigger source. - ``D`` specifies a digital channel as the timeout trigger source. (Requires option - 3-MSO.) x has a minimum of 0 and a maximum of 15. + 3-MSO.). """ return self._source @@ -3202,9 +3198,8 @@ class TriggerASetholdDataSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a minimum - of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3262,9 +3257,8 @@ def source(self) -> TriggerASetholdDataSource: Info: - ``CH`` specifies an analog input channel as the data source for the setup and hold - trigger. x has a minimum of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source. Requires option 3-MSO. x has a - minimum of 0 and a maximum of 15. + trigger. + - ``D`` specifies a digital channel as the source. Requires option 3-MSO. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (For 2-channel MDO32 only.). """ @@ -3346,10 +3340,9 @@ class TriggerASetholdClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3458,10 +3451,9 @@ def source(self) -> TriggerASetholdClockSource: ``` Info: - - ``CH`` specifies the analog channel to use as the clock source waveform. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies the analog channel to use as the clock source waveform. - ``D`` specifies the digital channel to use as the clock source waveform. (Requires - option 3-MSO.) x has a minimum of 0 and a maximum of 15. + option 3-MSO.). - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Available for 2-channel MDO32, as it has an Aux Input connector.). @@ -3972,7 +3964,7 @@ class TriggerARisefallSource(SCPICmdWrite, SCPICmdRead): Info: - ``CH`` specifies one of the analog channels to be used as the source for a transition - trigger. x has a minimum of 1 and a maximum of 4. + trigger. """ @@ -4136,7 +4128,7 @@ def source(self) -> TriggerARisefallSource: Info: - ``CH`` specifies one of the analog channels to be used as the source for a - transition trigger. x has a minimum of 1 and a maximum of 4. + transition trigger. """ return self._source @@ -4368,13 +4360,11 @@ class TriggerAPulsewidthSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ @@ -4588,13 +4578,11 @@ def source(self) -> TriggerAPulsewidthSource: ``` Info: - - ``CH`` specifies an analog input channel as the pulse-width trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the pulse-width trigger source. - ``AUX`` specifies an external trigger using the Aux In connector located on the front panel of the oscilloscope. (Only for 2-channel model MDO32.). - ``LINE`` specifies AC line voltage as the trigger source. - - ``D`` specifies a digital channel as the trigger source. x has a minimum of 0 and a - maximum of 15. + - ``D`` specifies a digital channel as the trigger source. """ return self._source @@ -5436,10 +5424,8 @@ class TriggerALogicInputClockSource(SCPICmdWrite, SCPICmdRead): ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x has a - minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ @@ -5540,10 +5526,8 @@ def source(self) -> TriggerALogicInputClockSource: ``` Info: - - ``CH`` specifies an analog channel as the clock source. x has a minimum of 1 and a - maximum of 4. - - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.) x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog channel as the clock source. + - ``D`` specifies a digital channel as the clock source. (Requires option 3-MSO.). - ``NONE`` specifies a Pattern trigger. """ return self._source @@ -6265,10 +6249,8 @@ class TriggerAEdgeSource(SCPICmdWrite, SCPICmdRead): Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a minimum - of 1 and a maximum of 4. - - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). x - has a minimum of 0 and a maximum of 15. + - ``CH`` specifies an analog input channel as the A edge trigger source. + - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - ``LINE`` specifies the AC power line as the trigger source. """ @@ -6443,10 +6425,8 @@ def source(self) -> TriggerAEdgeSource: Info: - ``AUX`` specifies an external trigger using the auxiliary input connector located on the front panel of the oscilloscope. (For 2-channel MDO32 model only.). - - ``CH`` specifies an analog input channel as the A edge trigger source. x has a - minimum of 1 and a maximum of 4. + - ``CH`` specifies an analog input channel as the A edge trigger source. - ``D`` specifies a digital channel as the source (only with option 3-MSO installed). - x has a minimum of 0 and a maximum of 15. - ``LINE`` specifies the AC power line as the trigger source. """ return self._source diff --git a/src/tm_devices/commands/lpd6_commands.py b/src/tm_devices/commands/lpd6_commands.py index 3c23da0b..faa32ec8 100644 --- a/src/tm_devices/commands/lpd6_commands.py +++ b/src/tm_devices/commands/lpd6_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mdo3_commands.py b/src/tm_devices/commands/mdo3_commands.py index 2cc656f5..d0aedf1d 100644 --- a/src/tm_devices/commands/mdo3_commands.py +++ b/src/tm_devices/commands/mdo3_commands.py @@ -18,7 +18,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -31,16 +30,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -85,7 +81,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -94,17 +89,22 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm from .gen_ujuvb_mdo.acquire import Acquire +from .gen_ujuvb_mdo.bus import Bus from .gen_ujuvb_mdo.configuration import Configuration from .gen_ujuvb_mdo.cursor import Cursor from .gen_ujuvb_mdo.deskew import Deskew from .gen_ujuvb_mdo.display import Display +from .gen_ujuvb_mdo.header import Header +from .gen_ujuvb_mdo.histogram import Histogram from .gen_ujuvb_mdo.lock import Lock +from .gen_ujuvb_mdo.mark import Mark from .gen_ujuvb_mdo.mask import Mask from .gen_ujuvb_mdo.measurement import Measurement from .gen_ujuvb_mdo.message import Message from .gen_ujuvb_mdo.recall import Recall from .gen_ujuvb_mdo.rf import Rf from .gen_ujuvb_mdo.rrb import Rrb +from .gen_ujuvb_mdo.save import Save from .gen_ujuvb_mdo.search import Search from .gen_ujuvb_mdo.select import Select from .gen_ujuvb_mdo.setup1 import Setup1Item @@ -293,6 +293,8 @@ class MDO3CommandConstants: FORCE = "FORCE" # FORCe FORMERROR = "FORMERROR" # FORMERRor FORWARDS = "FORWARDS" # FORWards + FOUR = "FOUR" + FOURTEENTEN = "FOURTEENTEN" # FOURTEENten FP = "FP" FPANEL = "FPANEL" # FPAnel FPBINARY = "FPBINARY" # FPbinary @@ -426,6 +428,7 @@ class MDO3CommandConstants: NOPARITY = "NOPARITY" # NOPARity NOR = "NOR" NORMAL = "NORMAL" # NORMal + # NORMAL = "NORmal" NOVERSHOOT = "NOVERSHOOT" # NOVershoot NPULSECOUNT = "NPULSECOUNT" # NPULSECount NRFWFMINDTO = "NRFWFMINDTO" # NrfWfmInDTO @@ -544,6 +547,8 @@ class MDO3CommandConstants: SINC = "SINC" SINE = "SINE" SINGLEENDED = "SINGLEENDED" # SINGleended + SIX = "SIX" + SIXTEENEIGHT = "SIXTEENEIGHT" # SIXTEENeight SLEEP = "SLEEP" SLOWER = "SLOWER" # SLOWer SMALL = "SMALL" # SMAll @@ -581,6 +586,7 @@ class MDO3CommandConstants: TEMPERATURE = "TEMPERATURE" # TEMPErature THAN = "THAN" # Than # THAN = "than" + THREE = "THREE" TIFF = "TIFF" # TIFf TIME = "TIME" # TIMe TIQ = "TIQ" @@ -594,11 +600,14 @@ class MDO3CommandConstants: TRILEVELCUSTOM = "TRILEVELCUSTOM" # TRILevelcustom TRUE = "TRUE" # TRUe TTL = "TTL" + TWELVETWELVE = "TWELVETWELVE" # TWELVEtwelve + TWO = "TWO" TX = "TX" TXDATA = "TXDATA" TXENDPACKET = "TXENDPACKET" # TXENDPacket TXRX = "TXRX" TXSTART = "TXSTART" # TXSTArt + UNASSIGNED = "UNASSIGNED" # UNASsigned UNDO = "UNDO" # UNDo UNEQUAL = "UNEQUAL" # UNEQual UNLOCKED = "UNLOCKED" # UNLOCKed @@ -1871,10 +1880,8 @@ def header(self) -> Header: """Return the ``HEADer`` command. Description: - - This command sets or queries the Response Header Enable State that causes the - instrument to either include or omit headers on query responses. Whether the long or - short form of header keywords and enumerations are returned is dependent upon the - state of ``:VERBose``. + - This command specifies the Response Header Enable State that causes the oscilloscope + to either include or omit headers on query responses. Usage: - Using the ``.query()`` method will send the ``HEADer?`` query. @@ -1889,13 +1896,13 @@ def header(self) -> Header: ``` Info: - - ```` = 0 sets the Response Header Enable State to false; any other value sets - this state to true. - - ``OFF`` sets the Response Header Enable State to false. This causes the instrument to - omit headers on query responses, so that only the argument is returned. - - ``ON`` sets the Response Header Enable State to true. This causes the instrument to + - ``OFF`` sets the Response Header Enable State to false. This causes the oscilloscope + to omit headers on query responses, so that only the argument is returned. + - ``ON`` sets the Response Header Enable State to true. This causes the oscilloscope to include headers on applicable query responses. You can then use the query response as a command. + - ```` = 0 sets the Response Header Enable State to false; any other value sets + this state to true. """ return self._header diff --git a/src/tm_devices/commands/mdo3k_commands.py b/src/tm_devices/commands/mdo3k_commands.py index 536484d4..55e04ac3 100644 --- a/src/tm_devices/commands/mdo3k_commands.py +++ b/src/tm_devices/commands/mdo3k_commands.py @@ -11,6 +11,7 @@ from tm_devices.driver_mixins.device_control.pi_control import PIControl from tm_devices.helpers import ReadOnlyCachedProperty as cached_property # noqa: N813 +from .gen_1l4fot_mdomso.bus import Bus from .gen_1l4fot_mdomso.cursor import Cursor from .gen_1lcv3a_msodpomdo.message import Message from .gen_1lcv3a_msodpomdo.setup_1 import SetupItem @@ -21,7 +22,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -34,16 +34,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -55,9 +52,11 @@ from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog @@ -65,6 +64,7 @@ from .gen_1nmc1o_msodpomdo.status_and_error import Psc from .gen_1nmc1o_msodpomdo.usbdevice import Usbdevice from .gen_1nmc1o_msodpomdo.usbtmc import Usbtmc +from .gen_16opiv_mdomso.mark import Mark from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve @@ -95,7 +95,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -103,6 +102,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .gen_usaa3_mdo.rf import Rf @@ -2087,7 +2087,6 @@ def mark(self) -> Mark: Sub-properties: - ``.create``: The ``MARK:CREATE`` command. - - ``.delete``: The ``MARK:DELEte`` command. - ``.free``: The ``MARK:FREE`` command. - ``.saveall``: The ``MARK:SAVEALL`` command. - ``.selected``: The ``MARK:SELected`` command tree. diff --git a/src/tm_devices/commands/mdo4k_commands.py b/src/tm_devices/commands/mdo4k_commands.py index 0f64dba0..8b29455e 100644 --- a/src/tm_devices/commands/mdo4k_commands.py +++ b/src/tm_devices/commands/mdo4k_commands.py @@ -22,7 +22,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -35,16 +34,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -52,14 +48,17 @@ from .gen_1ltpwt_mdomsodpo.wfmoutpre import Wfmoutpre from .gen_1ltpwt_mdomsodpo.zoom import Zoom from .gen_1lwj1r_msomdodpo.rosc import Rosc +from .gen_1lxxm9_msomdodpo.bus import Bus from .gen_1lxxm9_msomdodpo.cursor import Cursor from .gen_1mlt9u_mdomsodpo.acquire import Acquire from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog @@ -67,6 +66,7 @@ from .gen_1nmc1o_msodpomdo.status_and_error import Psc from .gen_1nmc1o_msodpomdo.usbdevice import Usbdevice from .gen_1nmc1o_msodpomdo.usbtmc import Usbtmc +from .gen_163n04_mdo.mark import Mark from .gen_163n04_mdo.search import Search from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory @@ -2093,7 +2093,6 @@ def mark(self) -> Mark: - ``PREVious`` moves to the next reference mark on the left. Sub-properties: - - ``.create``: The ``MARK:CREATE`` command. - ``.delete``: The ``MARK:DELEte`` command. - ``.free``: The ``MARK:FREE`` command. - ``.saveall``: The ``MARK:SAVEALL`` command. diff --git a/src/tm_devices/commands/mdo4kb_commands.py b/src/tm_devices/commands/mdo4kb_commands.py index 736d7076..2689fe6d 100644 --- a/src/tm_devices/commands/mdo4kb_commands.py +++ b/src/tm_devices/commands/mdo4kb_commands.py @@ -13,9 +13,11 @@ from .gen_1jzp7o_mdodpo.trigger import Trigger from .gen_1kjd62_mdo.rf import Rf +from .gen_1l4fot_mdomso.bus import Bus from .gen_1l4fot_mdomso.cursor import Cursor from .gen_1lcv3a_msodpomdo.message import Message from .gen_1lcv3a_msodpomdo.setup_1 import SetupItem +from .gen_1le9o2_mdo.mark import Mark from .gen_1ltpwt_mdomsodpo.actonevent import Actonevent from .gen_1ltpwt_mdomsodpo.afg import Afg from .gen_1ltpwt_mdomsodpo.alias import Alias @@ -23,7 +25,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -36,16 +37,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -57,9 +55,11 @@ from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mdo4kc_commands.py b/src/tm_devices/commands/mdo4kc_commands.py index 06d6750e..5dd7de1c 100644 --- a/src/tm_devices/commands/mdo4kc_commands.py +++ b/src/tm_devices/commands/mdo4kc_commands.py @@ -14,9 +14,11 @@ from .gen_1kdqwg_mdo.search import Search from .gen_1kdqwg_mdo.trigger import Trigger from .gen_1kjd62_mdo.rf import Rf +from .gen_1l4fot_mdomso.bus import Bus from .gen_1l4fot_mdomso.cursor import Cursor from .gen_1lcv3a_msodpomdo.message import Message from .gen_1lcv3a_msodpomdo.setup_1 import SetupItem +from .gen_1le9o2_mdo.mark import Mark from .gen_1ltpwt_mdomsodpo.actonevent import Actonevent from .gen_1ltpwt_mdomsodpo.afg import Afg from .gen_1ltpwt_mdomsodpo.alias import Alias @@ -24,7 +26,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -37,16 +38,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -58,9 +56,11 @@ from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso2_commands.py b/src/tm_devices/commands/mso2_commands.py index 8d466ee5..bf7fad0d 100644 --- a/src/tm_devices/commands/mso2_commands.py +++ b/src/tm_devices/commands/mso2_commands.py @@ -92,7 +92,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -100,6 +99,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso2k_commands.py b/src/tm_devices/commands/mso2k_commands.py index f8faa398..2d045554 100644 --- a/src/tm_devices/commands/mso2k_commands.py +++ b/src/tm_devices/commands/mso2k_commands.py @@ -48,7 +48,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -56,6 +55,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .gen_u301s_msodpo.acquire import Acquire diff --git a/src/tm_devices/commands/mso2kb_commands.py b/src/tm_devices/commands/mso2kb_commands.py index cebfa02e..a121b6df 100644 --- a/src/tm_devices/commands/mso2kb_commands.py +++ b/src/tm_devices/commands/mso2kb_commands.py @@ -48,7 +48,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -56,6 +55,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .gen_u301s_msodpo.acquire import Acquire diff --git a/src/tm_devices/commands/mso4_commands.py b/src/tm_devices/commands/mso4_commands.py index 92e33094..100bac0b 100644 --- a/src/tm_devices/commands/mso4_commands.py +++ b/src/tm_devices/commands/mso4_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso4b_commands.py b/src/tm_devices/commands/mso4b_commands.py index 87ce3d77..c2814f88 100644 --- a/src/tm_devices/commands/mso4b_commands.py +++ b/src/tm_devices/commands/mso4b_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso4k_commands.py b/src/tm_devices/commands/mso4k_commands.py index 5888294b..fc8dcb7e 100644 --- a/src/tm_devices/commands/mso4k_commands.py +++ b/src/tm_devices/commands/mso4k_commands.py @@ -22,7 +22,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -35,16 +34,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -52,16 +48,20 @@ from .gen_1ltpwt_mdomsodpo.wfmoutpre import Wfmoutpre from .gen_1ltpwt_mdomsodpo.zoom import Zoom from .gen_1lwj1r_msomdodpo.rosc import Rosc +from .gen_1lxxm9_msomdodpo.bus import Bus from .gen_1lxxm9_msomdodpo.cursor import Cursor from .gen_1mlt9u_mdomsodpo.acquire import Acquire from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1mq0z9_msodpo.rf import Rf +from .gen_1msu49_msodpo.mark import Mark from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu from .gen_1nmc1o_msodpomdo.errlog import Errlog from .gen_1nmc1o_msodpomdo.language import Language @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory @@ -212,7 +212,6 @@ class MSO4KCommandConstants: CMOS_2_5V = "CMOS_2_5V" CMOS_3_3V = "CMOS_3_3V" CMOS_5_0V = "CMOS_5_0V" - COLUMN = "COLUMN" COMMAND = "COMMAND" COPYACTIVE = "COPYACTIVE" # COPYACTive CPU = "CPU" @@ -2093,8 +2092,6 @@ def mark(self) -> Mark: - ``PREVious`` moves to the next reference mark on the left. Sub-properties: - - ``.create``: The ``MARK:CREATE`` command. - - ``.delete``: The ``MARK:DELEte`` command. - ``.free``: The ``MARK:FREE`` command. - ``.saveall``: The ``MARK:SAVEALL`` command. - ``.selected``: The ``MARK:SELected`` command tree. diff --git a/src/tm_devices/commands/mso4kb_commands.py b/src/tm_devices/commands/mso4kb_commands.py index 276b77c4..54d83885 100644 --- a/src/tm_devices/commands/mso4kb_commands.py +++ b/src/tm_devices/commands/mso4kb_commands.py @@ -11,6 +11,7 @@ from tm_devices.driver_mixins.device_control.pi_control import PIControl from tm_devices.helpers import ReadOnlyCachedProperty as cached_property # noqa: N813 +from .gen_1l4fot_mdomso.bus import Bus from .gen_1l4fot_mdomso.cursor import Cursor from .gen_1la1ym_msomdodpo.trigger import Trigger from .gen_1lcv3a_msodpomdo.message import Message @@ -23,7 +24,6 @@ from .gen_1ltpwt_mdomsodpo.autoset import Autoset from .gen_1ltpwt_mdomsodpo.auxin import Auxin from .gen_1ltpwt_mdomsodpo.auxout import Auxout -from .gen_1ltpwt_mdomsodpo.bus import Bus from .gen_1ltpwt_mdomsodpo.calibrate import Calibrate from .gen_1ltpwt_mdomsodpo.ch import Channel from .gen_1ltpwt_mdomsodpo.d import DigitalBit @@ -36,16 +36,13 @@ from .gen_1ltpwt_mdomsodpo.fpanel import Fpanel from .gen_1ltpwt_mdomsodpo.gpibusb import Gpibusb from .gen_1ltpwt_mdomsodpo.hardcopy import Hardcopy -from .gen_1ltpwt_mdomsodpo.histogram import Histogram from .gen_1ltpwt_mdomsodpo.horizontal import Horizontal -from .gen_1ltpwt_mdomsodpo.mark import Mark from .gen_1ltpwt_mdomsodpo.marker import Marker from .gen_1ltpwt_mdomsodpo.math1 import Math1 from .gen_1ltpwt_mdomsodpo.pictbridge import Pictbridge from .gen_1ltpwt_mdomsodpo.power import Power from .gen_1ltpwt_mdomsodpo.reboot import Reboot from .gen_1ltpwt_mdomsodpo.ref import RefItem -from .gen_1ltpwt_mdomsodpo.save import Save from .gen_1ltpwt_mdomsodpo.socketserver import Socketserver from .gen_1ltpwt_mdomsodpo.time import Time from .gen_1ltpwt_mdomsodpo.vidpic import Vidpic @@ -57,9 +54,11 @@ from .gen_1mlt9u_mdomsodpo.configuration import Configuration from .gen_1mlt9u_mdomsodpo.deskew import Deskew from .gen_1mlt9u_mdomsodpo.display import Display +from .gen_1mlt9u_mdomsodpo.histogram import Histogram from .gen_1mlt9u_mdomsodpo.mask import Mask from .gen_1mlt9u_mdomsodpo.measurement import Measurement from .gen_1mlt9u_mdomsodpo.recall import Recall +from .gen_1mlt9u_mdomsodpo.save import Save from .gen_1mlt9u_mdomsodpo.select import Select from .gen_1mq0z9_msodpo.rf import Rf from .gen_1nmc1o_msodpomdo.clearmenu import Clearmenu @@ -68,6 +67,7 @@ from .gen_1nmc1o_msodpomdo.status_and_error import Psc from .gen_1nmc1o_msodpomdo.usbdevice import Usbdevice from .gen_1nmc1o_msodpomdo.usbtmc import Usbtmc +from .gen_16opiv_mdomso.mark import Mark from .gen_e6bmgw_lpdmsotekscopepcdpomdo.totaluptime import Totaluptime from .gen_e6wozn_lpdmsotekscopepcmdodpo.pause import Pause from .gen_fhrp27_msodpomdodsa.curve import Curve @@ -98,7 +98,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -106,6 +105,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory @@ -2095,7 +2095,6 @@ def mark(self) -> Mark: Sub-properties: - ``.create``: The ``MARK:CREATE`` command. - - ``.delete``: The ``MARK:DELEte`` command. - ``.free``: The ``MARK:FREE`` command. - ``.saveall``: The ``MARK:SAVEALL`` command. - ``.selected``: The ``MARK:SELected`` command tree. diff --git a/src/tm_devices/commands/mso5_commands.py b/src/tm_devices/commands/mso5_commands.py index 66c7d84d..cf4f33c3 100644 --- a/src/tm_devices/commands/mso5_commands.py +++ b/src/tm_devices/commands/mso5_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso5b_commands.py b/src/tm_devices/commands/mso5b_commands.py index f483d0ff..a95411f4 100644 --- a/src/tm_devices/commands/mso5b_commands.py +++ b/src/tm_devices/commands/mso5b_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso5k_commands.py b/src/tm_devices/commands/mso5k_commands.py index 67b97d00..acab557e 100644 --- a/src/tm_devices/commands/mso5k_commands.py +++ b/src/tm_devices/commands/mso5k_commands.py @@ -106,7 +106,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -114,6 +113,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso5kb_commands.py b/src/tm_devices/commands/mso5kb_commands.py index d4d30c96..ce38dc49 100644 --- a/src/tm_devices/commands/mso5kb_commands.py +++ b/src/tm_devices/commands/mso5kb_commands.py @@ -108,7 +108,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -116,6 +115,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso5lp_commands.py b/src/tm_devices/commands/mso5lp_commands.py index 3fb3d37c..79e202c9 100644 --- a/src/tm_devices/commands/mso5lp_commands.py +++ b/src/tm_devices/commands/mso5lp_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso6_commands.py b/src/tm_devices/commands/mso6_commands.py index d53c0bff..93304136 100644 --- a/src/tm_devices/commands/mso6_commands.py +++ b/src/tm_devices/commands/mso6_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso6b_commands.py b/src/tm_devices/commands/mso6b_commands.py index 9ff4bdd9..1db722d2 100644 --- a/src/tm_devices/commands/mso6b_commands.py +++ b/src/tm_devices/commands/mso6b_commands.py @@ -101,7 +101,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -109,6 +108,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso70kc_commands.py b/src/tm_devices/commands/mso70kc_commands.py index 57fa76f5..c193f8e7 100644 --- a/src/tm_devices/commands/mso70kc_commands.py +++ b/src/tm_devices/commands/mso70kc_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/mso70kdx_commands.py b/src/tm_devices/commands/mso70kdx_commands.py index 46bc8d3b..9f500cb0 100644 --- a/src/tm_devices/commands/mso70kdx_commands.py +++ b/src/tm_devices/commands/mso70kdx_commands.py @@ -107,7 +107,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -115,6 +114,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fzn174_lpdmsodpomdodsa.lock import Lock from .gen_fzn174_lpdmsodpomdodsa.unlock import Unlock from .helpers import DefaultDictPassKeyToFactory diff --git a/src/tm_devices/commands/tekscopepc_commands.py b/src/tm_devices/commands/tekscopepc_commands.py index 9d2e47cc..b2f8c2bc 100644 --- a/src/tm_devices/commands/tekscopepc_commands.py +++ b/src/tm_devices/commands/tekscopepc_commands.py @@ -80,7 +80,6 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evmsg import Evmsg from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.evqty import Evqty from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.factory import Factory -from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.header import Header from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.id import Id from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.miscellaneous import Lrn from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.rem import Rem @@ -88,6 +87,7 @@ from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.status_and_error import Pud from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.verbose import Verbose from .gen_fxvtmy_lpdmsotekscopepcdpomdodsa.wavfrm import Wavfrm +from .gen_fzd77z_lpdmsotekscopepcdpomdodsa.header import Header from .helpers import DefaultDictPassKeyToFactory diff --git a/tests/auto_gen_cmds_list.json b/tests/auto_gen_cmds_list.json index ebe73498..1eb3160e 100644 --- a/tests/auto_gen_cmds_list.json +++ b/tests/auto_gen_cmds_list.json @@ -2160,6 +2160,7 @@ "HCOPy:SDUMp[:IMMediate]", "HDR", "HEADer", + "HEADer|:HDR", "HISTogram:ADDNew", "HISTogram:DELETEALL", "HISTogram:DELete",